<Insert Picture Here> Integrating SOA and the Application Development Framework Shaun O’Brien Principal Product Manager – Oracle JDeveloper / ADF Overview • Oracle Fusion Architecture • Where do ADF and SOA live? • How does ADF 11g improve on standard SOA integration models? • • • • Expose ADF Business Components as SDO Web Services Customizing Human Task Flow activities Consuming Web Services utilizing the Web Service Datacontrol Business Component Eventing Background: Oracle Fusion – What Is It? • Oracle Fusion Applications • Oracle’s next generation of enterprise applications • Oracle Fusion Middleware • Integrated standards-based middleware platform • Oracle Fusion Architecture • Recommended architecture for your custom applications Background: What We Wanted – Business Drivers • • • • • • Cutting Edge UI Agility System Integration Standards Scalability, Security, Portability Time to market Problem: The Development Challenge • On one side: • JPA, EJB, Ajax, JavaScript, BPEL, SOAP, WSDL, RMI, JNDI, JDBC, O/R, HTML, DOM…. • On the other side: • • • • • • Thousands of developers Most don’t know these technologies Most come from 4GL background Expecting a visual and declarative approach Don’t have time to learn all these new technologies Need to focus on their specific application needs • How do you make it easy and approachable? The Solution - Oracle ADF Framework • Development framework that simplifies development of Java EE-based SOA applications • Abstract developers from technology complexities • Example - UI Components abstract from Ajax, Flash, Javascript, DOM • Provides end-to-end infrastructure solutions… • O/R Mapping, persistence, caching, controller, binding, UI framework, security • …and an easy way to use them • JDeveloper - Visual editors, Property editors, dialogs etc… ADF Business Components A framework that simplifies developing Java EE business services for developers familiar with 4GL tools, declarative development, and relational databases • • • • Simplify data access Uses SQL based data views Implement best practices Easy customization Business Component Features • • • • • • • • • • • Query by example any field Master/Detail coordination List of values Calculated fields Various validations Exposing services Range fetching Transaction control Locking mechanism State management All done declaratively without coding! Building Business Components ADF Model - Data Binding • ADF Model • JSR-227 Data Controls • Service Oriented Interface • Abstract implementation from clients • Loose coupling between services and application • More Productivity • Drag and drop data binding • More Reusability for Services • Discover and share services ADF View Business Logic User Interface ADF Faces components Data Business Services ADF Business Components Database Schema Data Binding SDO Services The Fusion Architecture WebCenter View Business Logic User Interface Business Services ADF Faces components ADF Business Components Data Database Schema Data Binding SDO Services Events Business Activity Monitoring Human Workflow Service Assign Task Mediator /BPEL Process results Task Complete Monitoring Human interaction facts Rules Engine Orchestration Policy evaluation ADF to SOA Interactions WebCenter View Business Logic User Interface Business Services ADF Faces components ADF Business Components Data Database Schema Data Binding SDO Services Events Business Activity Monitoring Human Workflow Service Assign Task Mediator /BPEL Process results Task Complete Monitoring Human interaction facts Rules Engine Orchestration Policy evaluation Binding JSF UI to SOA • The Java EE way • • • • Write manage bean Write JSF page code Write EL to connect JSF components to manage bean Write more manage bean logic to invoke actions • The Oracle way • ADF Binding – drag and drop ADF 11g Built-in Data Controls • • • • • • • • ADF Business Components Java Class EJB URL (XML or CSV) Place Holder Web Service BAM Add your own ADF and SOA Integration Points • Expose ADF BC into SCA • ADF BC Service interface wizard • Show/Interact human workflow tasks in ADF UI • Automatically generate ADF forms • Customize workflow task details through ADF UI • Invoke a composite from ADF UI • Use Web service data control based on the composite WSDL BAM Data Control • Expose BAM data • Drag to the JSF page • Push to the client with Oracle ADF Active Data Services Exposing ADF BC to SCA/SDO • Expose your DB access layer as services • Simple wizard based definition • SOA Adaptor Demo Expose Business Components as Web Services •<Insert Picture Here> Expose Human Tasks in ADF Demo Create Custom Human Task Page •<Insert Picture Here> Web Service Data Control 1. Give WSDL 2. Get Data Control 3. Drag and drop to page Business Component Eventing • Allows publishing of events to the SCA fabric from the Business Components tier. • Can be conditional or not • Any number of elements can be listeners for the event on the ESB. The Fusion Architecture WebCenter View Business Logic User Interface Business Services ADF Faces components ADF Business Components Data Database Schema Data Binding SDO Services Events Business Activity Monitoring Human Workflow Service Assign Task Enterprise Service Bus results Task Complete Monitoring Human interaction facts Rules Engine Orchestration Policy evaluation Creating a Business Component Event 1. Create Event Definition 2. Add Event Publication Rule 3. Create Conditions for Publication (optional) Demo Adding Eventing to a Business Component •<Insert Picture Here> Summary • ADF Binding • Visual and declarative way to create UI on top of various services • ADF Integration with SOA • ADF BC SDO interface • Human task lists forms generation • Web service Data Control •<Insert Picture Here> Q&A, Next Steps, and additional sources of help http://www.oracle.com/technology/products/jdev/index.html Learn More • Oracle.com/technology/jdev • • • • • <Insert Picture Here> Download Tutorials Discussion forum Samples ADF Developer Guide • http://download.oracle.com/otn_hosted_doc/jdeveloper/11gdemos/ ADFInsider-SOA/OracleInsider-SOA.html • More…