Presentation is loading. Please wait.

Presentation is loading. Please wait.

Fall 2007 1 CIS 764 Database Systems Engineering L7. ADF + EJB Context: Oracle Application Development Framework …but … only EJB.

Similar presentations


Presentation on theme: "Fall 2007 1 CIS 764 Database Systems Engineering L7. ADF + EJB Context: Oracle Application Development Framework …but … only EJB."— Presentation transcript:

1 Fall 2007 http://www.cis.ksu.edu 1 CIS 764 Database Systems Engineering L7. ADF + EJB Context: Oracle Application Development Framework …but … only EJB homework for now.

2 Fall 2007 http://www.cis.ksu.edu 2 CIS 764 Database Systems Engineering Oracle Fusion http://en.wikipedia.org/wiki/Oracle_Fusion_Middleware … the whole middleware suite … application server (including OC4J) BEPL manager (business process execution language) business rules system messaging service ADF <<<<<<<<<<<<<<<<<<<<<<<<<<<<<< JDeveloper Toplink Forms services Business Intelligence tools (monitoring, mining, analysis) Portal & portlets Identity & single sign-on … others.. the integration of eBus components (as PeopleSoft) into a SOA.

3 Fall 2007 http://www.cis.ksu.edu 3 CIS 764 Database Systems Engineering eWeek.com January 19, 2006 “ The lack of detail in Oracle's Fusion Application presentation suggests to some industry experts that the company is not at the halfway point in developing a merged suite. “

4 Fall 2007 http://www.cis.ksu.edu 4 CIS 764 Database Systems Engineering ADF http://en.wikipedia.org/wiki/Oracle_Application_Development_Framework included in JDev, ADF is the conceptual model, components, and wizards possible model components: EJB, WebService, TopLink, ADF_business_components controller: Struts, JSF (Java Server Faces) view: Swing, JSP, JSF all components conf via XML, for easy reconfig, reuse.

5 Fall 2007 http://www.cis.ksu.edu 5 CIS 764 Database Systems Engineering ADF Index Page http://www.oracle.com/technology/products/adf/index.html ADF Overview, http://www.oracle.com/technology/products/jdev/collateral/ papers/1013/adf_10.1.3_overview.pdf papers/1013/adf_10.1.3_overview.pdf 11 pages, 2006

6 Fall 2007 http://www.cis.ksu.edu 6 CIS 764 Database Systems Engineering

7 Fall 2007 http://www.cis.ksu.edu 7 CIS 764 Database Systems Engineering

8 Fall 2007 http://www.cis.ksu.edu 8 CIS 764 Database Systems Engineering GUI components Swing … only in Java apps (not in server) JSP ….. Weak components (button, form ), not automated data binding. JSF …. Web components, w data binding. ADF Faces … Oracle’s own extensions of JSF and with DB binding for use in apps.

9 Fall 2007 http://www.cis.ksu.edu 9 CIS 764 Database Systems Engineering http://www.oracle.com/technology/products/adf/learnadf.html ADF Learning Center: two tracks: * IDE Fusion … JSF, ADF Faces, ADF Model, ADF Business Components http://www.oracle.com/technology/products/jdev/viewlets/1013/ ADF_Overview_Viewlet_viewlet_swf.html ADF_Overview_Viewlet_viewlet_swf.html an animation and SC example * Java programmer…. JSF, ADF Faces,ADF Model, EJB3.0, TopLink

10 Fall 2007 http://www.cis.ksu.edu 10 CIS 764 Database Systems Engineering http://www.oracle.com/technology/obe/ADF_tutorial_1013/ADF_tutorial.pdf 170 pp … pdf for sample application, ServiceCompany.. Service requests for large appliances http://www.oracle.com/technology/obe/ADF_tutorial_1013/index.htm index page for the following: http://www.oracle.com/technology/products/jdev/samples/srdemo.html completed SC demo web app (required JUnit extension to JDev) http://download.oracle.com/otn_hosted_doc/jdeveloper/1013/adfdevguide.pdf 674 pp ADF guide !

11 Fall 2007 http://www.cis.ksu.edu 11 CIS 764 Database Systems Engineering Assignment: just listen to the following Steve Muench, ADF weblog http://radio.weblogs.com/0118231/stories/2005/06/24/jdeveloperAdfScreencasts.htm l Select #4: ( animated demo w audio) Creating a Databound, Master/Detail Swing Panel Using JGoodies Form Layout http://www.oracle.com/technology/products/jdev/tips/muench/screencasts/ simplejgoodies/binding_demo.html?_template=/ocom/ocom_item_templates/print

12 Fall 2007 http://www.cis.ksu.edu 12 CIS 764 Database Systems Engineering EJB3 POJO + Annotations => EJB EJB 3.0 Resources http://www.oracle.com/technology/tech/java/ejb30.html Introduction: http://www.oracle.com/technology/tech/java/newto/introejb.htm or Java World: (has more code examples) http://www.javaworld.com/javaworld/jw-08-2004/jw-0809-ejb.html

13 Fall 2007 http://www.cis.ksu.edu 13 CIS 764 Database Systems Engineering Entity bean … bound to entity data, with unique key value; can contain multiple subitems.  where is the concept of a result set ? Session bean …  “session beans generally represent actions …” << bad OO ! “process entity” vs “data entity” Stateless … “do not have internal state” (  ) … rather: do not keep track of the callers state ! Statefull …..maintains the conversation state across multiple method invocations (e.g. a shopping cart) Beans have an associated deployment descriptor Beans have own QL … “OO version of sql “

14 Fall 2007 http://www.cis.ksu.edu 14 CIS 764 Database Systems Engineering EJB annotations http://www.fnogol.de/archives/2005/05/13/ejb-30-annotations-cheat-sheet/

15 Fall 2007 http://www.cis.ksu.edu 15 CIS 764 Database Systems Engineering

16 Fall 2007 http://www.cis.ksu.edu 16 CIS 764 Database Systems Engineering import javax.ejb.Stateless.*; @Stateless(name="CalculateEJB") public class CalculateEJBBean implements CalculateEJB { int value = 0; public String incrementValue() { value++; return "value incremented by 1"; } }

17 Fall 2007 http://www.cis.ksu.edu 17 CIS 764 Database Systems Engineering import javax.persistence.*; import java.util.ArrayList; import java.util.Collection; @Entity @Table(name = "EMPLOYEES") public class Employee implements java.io.Serializable { private int empId; private String eName; private double sal; @Id @Column(name="EMPNO", primaryKey=true) /* getters and setters here … see next slide }

18 Fall 2007 http://www.cis.ksu.edu 18 CIS 764 Database Systems Engineering public int getEmpId( ) { return empId; } public void setEmpId(int empId) { this.empId = empId; } public String getEname( ) { return eName; } public void setEname(String eName) { this.eName = eName; } public double getSal( ) { return sal; } public void setSal(double sal) { this.sal = sal; } public String toString() { StringBuffer buf = new StringBuffer(); buf.append("Class:").append(this.getClass(). getName()).append(" :: ").append(" empId:").append(getEmpId()). append(" ename:").append(getEname()).append("sal:").append(getSal()); return buf.toString(); } ??? Why the toString method <<<<<<<<<<<<<<<< ??? Why ArrayList and Collection

19 Fall 2007 http://www.cis.ksu.edu 19 CIS 764 Database Systems Engineering import javax.naming.Context; import javax.naming.InitialContext; public class CalculateejbClient { public static void main(String [] args) { Context context = new InitialContext(); CalculateEJB myejb = (CalculateEJB)context.lookup("java:comp/env/ejb/CalculateEJB"); myejb.incrementValue(); } } ??? Where does this “client” run ??

20 Fall 2007 http://www.cis.ksu.edu 20 CIS 764 Database Systems Engineering Homework: Oracle EJB3 Simple Tutorial http://www.oracle.com/technology/obe/obe1013jdev/10131/10131_ejb_30/ejb_30.htm Do an “in essence” version for the PO DB. Note: this is not a web app. The client has remote access to the bean. Post snapshots in JDev and running the client.

21 Fall 2007 http://www.cis.ksu.edu 21 CIS 764 Database Systems Engineering Note: Future requirements: Contribute some tutorial content … Contribute some technical presentation …. … prior approval of topics is required.

22 Fall 2007 http://www.cis.ksu.edu 22 CIS 764 Database Systems Engineering end.


Download ppt "Fall 2007 1 CIS 764 Database Systems Engineering L7. ADF + EJB Context: Oracle Application Development Framework …but … only EJB."

Similar presentations


Ads by Google