CIS 764 Database Systems EngineeringSlide 2Slide 3Slide 4Slide 5Slide 6Slide 7Slide 8Slide 9Slide 10Slide 11Slide 12Slide 13Slide 14Slide 15Slide 16Slide 17Slide 18Slide 19Slide 20Slide 21Slide 22Fall 2007 http://www.cis.ksu.edu1CIS 764 Database Systems Engineering L7. ADF + EJB Context: Oracle Application Development Framework …but … only EJB homework for now.Fall 2007 http://www.cis.ksu.edu2CIS 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.Fall 2007 http://www.cis.ksu.edu3CIS 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. “Fall 2007 http://www.cis.ksu.edu4CIS 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.Fall 2007 http://www.cis.ksu.edu5CIS 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 11 pages, 2006Fall 2007 http://www.cis.ksu.edu6CIS 764 Database Systems EngineeringFall 2007 http://www.cis.ksu.edu7CIS 764 Database Systems EngineeringFall 2007 http://www.cis.ksu.edu8CIS 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.Fall 2007 http://www.cis.ksu.edu9CIS 764 Database Systems Engineeringhttp://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 an animation and SC example * Java programmer…. JSF, ADF Faces ,ADF Model , EJB3.0, TopLinkFall 2007 http://www.cis.ksu.edu10CIS 764 Database Systems Engineeringhttp://www.oracle.com/technology/obe/ADF_tutorial_1013/ADF_tutorial.pdf 170 pp … pdf for sample application, ServiceCompany .. Service requests for large applianceshttp://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 !Fall 2007 http://www.cis.ksu.edu11CIS 764 Database Systems EngineeringAssignment: just listen to the followingSteve Muench , ADF webloghttp://radio.weblogs.com/0118231/stories/2005/06/24/jdeveloperAdfScreencasts.htmlSelect #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/printFall 2007 http://www.cis.ksu.edu12CIS 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.htmlFall 2007 http://www.cis.ksu.edu13CIS 764 Database Systems EngineeringEntity 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 “Fall 2007 http://www.cis.ksu.edu14CIS 764 Database Systems Engineering EJB annotations http://www.fnogol.de/archives/2005/05/13/ejb-30-annotations-cheat-sheet/Fall 2007 http://www.cis.ksu.edu15CIS 764 Database Systems EngineeringFall 2007 http://www.cis.ksu.edu16CIS 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"; }}Fall 2007 http://www.cis.ksu.edu17CIS 764 Database Systems Engineeringimport 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 }Fall 2007 http://www.cis.ksu.edu18CIS 764 Database Systems Engineeringpublic int getEmpId( ) { return empId; }public void setEmpId(int empId) { this.empId = empId; }public String getEname( ) { return eName; }public void setEname(String eName) { this.eName =
View Full Document