Survey
* Your assessment is very important for improving the workof artificial intelligence, which forms the content of this project
* Your assessment is very important for improving the workof artificial intelligence, which forms the content of this project
Building Applications with Eclipse Frameworks and Tools for Oracle Shaun Smith EclipseLink, WTP Dali, & EMFT Teneo Committer Principal Product Manager, Oracle TopLink shaun.smith@oracle.com Raghu Srinivasan WTP JSF Tools Project Lead raghunathan.srinivasan@oracle.com Eclipse and Oracle | © 2008 Oracle; made available under the EPL v1.0 Introduction Enterprise Java Application Technologies Eclipse Tools for Enterprise Java Web Tools JSF Tools EJB 3 Dali Java Persistence Tools Data Tools Eclipse Runtimes for Enterprise Java EclipseLink Deploying Enterprise Java Applications Eclipse and Oracle | © 2008 Oracle; made available under the EPL v1.0 2 Enterprise Java Application Architecture Presentation Business Logic Data Access Storage Eclipse and Oracle | © 2008 Oracle; made available under the EPL v1.0 3 Enterprise Java Technologies JavaServer Faces (JSF) EJB 3 Java Persistence API (JPA) Relational Database Eclipse and Oracle | © 2008 Oracle; made available under the EPL v1.0 4 Tools for Enterprise Java Development JavaServer Faces (JSF) EJB 3 Java Persistence API (JPA) Data Tools Relational Database Eclipse and Oracle | © 2008 Oracle; made available under the EPL v1.0 5 Relational Data—Data Tools JavaServer Faces (JSF) EJB 3 Java Persistence API (JPA) Data Tools Relational Database Eclipse and Oracle | © 2008 Oracle; made available under the EPL v1.0 6 DTP Enablement—Oracle Database Plugin Supports connecting to and working with Oracle Database objects Oracle Database 10g Oracle 9i Database Release 2 Features Navigate all database objects Execute stored procedures and functions View textual and graphical execution plans Eclipse and Oracle | © 2008 Oracle; made available under the EPL v1.0 7 Oracle Database Plugin—Navigating & Editing Eclipse and Oracle | © 2008 Oracle; made available under the EPL v1.0 8 Oracle Database Plugin—Explain Plan Eclipse and Oracle | © 2008 Oracle; made available under the EPL v1.0 9 Java Persistence—Dali JavaServer Faces (JSF) EJB 3 Java Persistence API (JPA) Data Tools Relational Database Eclipse and Oracle | © 2008 Oracle; made available under the EPL v1.0 10 JPA—Dali Java Persistence Tools Supports development of JPA Entities Simplifies mapping and editing through: intelligent mapping assistance dynamic problem identification generation and automated mapping wizards Extensible frameworks and tools so vendors and open source projects can provide specific support for their JPA runtimes A subproject of the Web Tools Platform (WTP) Eclipse and Oracle | © 2008 Oracle; made available under the EPL v1.0 11 Why do you need JPA Tools? JPA runtime combines: Java SE/EE Java Classes Mapping Metadata Java Classes Database schema Mapping Metadata Database Schema Design Time Eclipse and Oracle | © 2008 Oracle; made available under the EPL v1.0 JPA Persistence Provider Database Runtime 12 Why do you need JPA Tools? How can you tell if they all match? Deploy and run tests? slow find one problem at a time (fix, run, fix, …) definitive Java SE/EE Java Classes Mapping Metadata JPA Persistence Provider Design time validation? quick finds all issues validates against spec runtime may not match spec Database Schema Design Time Eclipse and Oracle | © 2008 Oracle; made available under the EPL v1.0 Database Runtime 13 DEMO Eclipse and Oracle | © 2008 Oracle; made available under the EPL v1.0 14 EclipseLink—Eclipse Persistence Services Project Incubating Technology Project Comprehensive EclipseLink JPA: Object-Relational EclipseLink MOXy: Object-XML EclipseLink SDO: Service Data Objects EclipseLink DBWS: Database Web Services EclipseLink EIS: Non-Relational using JCA Providing OSGi persistence services Eclipse and Oracle | © 2008 Oracle; made available under the EPL v1.0 15 Java SE, Java EE, SCA, Spring, OSGi JPA MOXy SDO EIS DBWS Eclipse Persistence Services (EclipseLink) JCA JDBC XML Relational Databases Packaged Apps Eclipse and Oracle | © 2008 Oracle; made available under the EPL v1.0 Legacy Systems 16 History of EclipseLink 1996 2008 Eclipse and Oracle | © 2008 Oracle; made available under the EPL v1.0 17 EclipseLink News Flash! EclipseLink will provide JPA 2.0 Reference Implemenation JPA JPA 1.0 compliant implementation Java EE, Java SE, Web, Spring, and OSGi Any JDBC/SQL compliant database Extensible and pluggable Schema generation from Entities Key infrastructure: Caching, Locking, Query Framework, Mapping, … … plus many valuable advanced features …and JAXB, SDO, EIS, Database Web Services Eclipse and Oracle | © 2008 Oracle; made available under the EPL v1.0 18 DEMO Eclipse and Oracle | © 2008 Oracle; made available under the EPL v1.0 19 EJB 3—Web Tools JavaServer Faces (JSF) EJB 3 Java Persistence API (JPA) Data Tools Relational Database Eclipse and Oracle | © 2008 Oracle; made available under the EPL v1.0 20 EJB 3—Web Tools Available now in Milestone Ganymede builds Eclipse and Oracle | © 2008 Oracle; made available under the EPL v1.0 21 JavaServer Faces—JSF Tools JavaServer Faces (JSF) EJB 3 Java Persistence API (JPA) Data Tools Relational Database Eclipse and Oracle | © 2008 Oracle; made available under the EPL v1.0 22 JavaServer Faces—JSF Tools Brings the Eclipse platform’s ease-of-use features to the development of JavaServer Faces (JSF) based web applications Web Page Editor for visually editing a JSF-JSPpage Content Assists, Syntactic and semantic validation of JSF-JSP pages Support for The JSF Standard Tag Libraries The Apache MyFaces Trinidad Tag Library Faces Configuration Editor for editing JSF application configuration resource files (faces-config.xml). Extensible Frameworks JSF Facelets Tools incubating project to support Facelets Eclipse and Oracle | © 2008 Oracle; made available under the EPL v1.0 23 Web Page Editor Eclipse and Oracle | © 2008 Oracle; made available under the EPL v1.0 24 Web Page Editor – Apache MyFaces Trinidad Eclipse and Oracle | © 2008 Oracle; made available under the EPL v1.0 25 Content Assists, Syntactic and Semantic Validations Content Assists Semantic Validation Validation preference Eclipse and Oracle | © 2008 Oracle; made available under the EPL v1.0 26 Faces Configuration Editor Eclipse and Oracle | © 2008 Oracle; made available under the EPL v1.0 27 Support for Alternate View Description languages Pluggable design-time support for alternate view description languages. JSF Facelets Tools Incubator Project Facelets is not part of the current version of the JSF specification, JSF 1.2 Facelets-like view handler planned for JSF 2.0 (JSR – 314) Incubator project will enable current features of the JSF Tools Project in a dynamic web project for Facelets Eclipse and Oracle | © 2008 Oracle; made available under the EPL v1.0 28 JSF Facelets Tools Incubator Project Supported Features In the HTML Editor Tag content assist Tag attribute name content assist Static value content assist for JSF attributes EL content assist EL hover support for bean variables EL hyperlink for bean variables and properties Validation for both static and EL values Eclipse and Oracle | © 2008 Oracle; made available under the EPL v1.0 29 Tag Content Assist Eclipse and Oracle | © 2008 Oracle; made available under the EPL v1.0 30 Validation Eclipse and Oracle | © 2008 Oracle; made available under the EPL v1.0 31 Running Enterprise Java Applications JavaServer Faces (JSF) EJB 3 EcilpseLink JPA Relational Database Eclipse and Oracle | © 2008 Oracle; made available under the EPL v1.0 32 Oracle Containers for Java EE (OC4J) Java EE, Persistence, Messaging and Web Services BPEL ADF ESB JMS Router Web Center Scheduler Rules ASControl FMW Applications/Frameworks JSF/Servlet Presentation EJB Business Logic JPA Persistence Web Services JMS Messaging JCA Connectivity Transactions Connection Pooling TopLink Persistence Infrastructure Resource Management Protocol Handling Security Kernel and JMX Infrastructure Middleware Administration Oracle Containers for Server Java EE Eclipse and Oracle | © 2008 Oracle; made available under the EPL v1.0 33 SPECjAppServer2004—Leadership In All Categories SPECjApp Server2004 JOPS@Standard Server Nodes Date Result HP-UX Integrity BL860c Server Blade Cluster, Dual Core Itanium 9100, 48 Cores 10,519 12 Nov 2007 World Record, Multi-Node HP-UX Integrity BL860c Server Blade Cluster, Dual Core Itanium 9100, 44 Cores 9459 11 Nov 2007 World Record, Multi-Node, RAC Dell PowerEdge 1950 Harpertown Xeon E5440, 16 Cores 3,595 2 Nov 2007 World Record, Dual Node HP Proliant BL460c G1 Harpertown Xeon X5460, 8 Cores 2,056 1 Nov 2007 World Record, Single Node Sun SPARC Enterprise T5220 Sun UltraSPARC T2, 8 Cores 2,000 1 Oct 2007 Best on One CPU Application Server Platform/CPU/Cores 10519 Best Multi-Node Result 8253 Best on RAC Result Best Dual Node Result 4368 Best Single Node Result Best on One CPU Result IBM BEA Oracle See: http://www.spec.org/jAppServer2004/results/ Eclipse and Oracle | © 2008 Oracle; made available under the EPL v1.0 34 Highest Quality of Service Performance Scalability Availability Security Lowest Cost Easier to Manage Reduce risk of change Eclipse and Oracle | © 2008 Oracle; made available under the EPL v1.0 35 Web Tools—Oracle Application Server Adapter Deploy web and enterprise applications to Oracle Application Server Supports Oracle Containers for Java EE Release 10.1.3.x Release 11g (Ganymede) Eclipse and Oracle | © 2008 Oracle; made available under the EPL v1.0 36 Summary Oracle actively involved with Eclipse tools and runtimes Runtime Platform, Web Tools, Data Tools Leading Dali, JSF Tools, & EclipseLink With Eclipse you can build and deploy applications to Oracle Oracle Application Server Oracle Database Eclipse and Oracle | © 2008 Oracle; made available under the EPL v1.0 37 EcilpseLink—www.ecilpse.org/eclipselink Dali—www.eclipse.org/dali JSF Tools—www.eclipse.org/webtools/jsf Any questions? Eclipse and Oracle | © 2008 Oracle; made available under the EPL v1.0 38