38
Eclipse and Oracle | © 2008 Oracle; made available under the EPL v1.0 Building Applications with Eclipse Frameworks and Tools for Oracle Shaun Smith EclipseLink, WTP Dali, & EMFT Teneo Committer Principal Product Manager, Oracle TopLink [email protected] Raghu Srinivasan WTP JSF Tools Project Lead [email protected]

Building Applications with Eclipse Frameworks and Tools for Oracle

Embed Size (px)

DESCRIPTION

Building Applications with Eclipse Frameworks and Tools for Oracle. Shaun Smith EclipseLink, WTP Dali, & EMFT Teneo Committer Principal Product Manager, Oracle TopLink [email protected] Raghu Srinivasan WTP JSF Tools Project Lead [email protected]. Introduction. - PowerPoint PPT Presentation

Citation preview

Page 1: Building Applications with Eclipse Frameworks and Tools for Oracle

Eclipse and Oracle | © 2008 Oracle; made available under the EPL v1.0

Building Applications with Eclipse Frameworks and Tools for Oracle

Shaun SmithEclipseLink, WTP Dali, & EMFT Teneo Committer Principal Product Manager, Oracle [email protected]

Raghu SrinivasanWTP JSF Tools Project [email protected]

Page 2: Building Applications with Eclipse Frameworks and Tools for Oracle

Eclipse and Oracle | © 2008 Oracle; made available under the EPL v1.0 2

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

Page 3: Building Applications with Eclipse Frameworks and Tools for Oracle

Eclipse and Oracle | © 2008 Oracle; made available under the EPL v1.0 3

Enterprise Java Application Architecture

Business Logic

Presentation

Data Access

Storage

Page 4: Building Applications with Eclipse Frameworks and Tools for Oracle

Eclipse and Oracle | © 2008 Oracle; made available under the EPL v1.0 4

Enterprise Java Technologies

EJB 3

JavaServer Faces (JSF)

Java Persistence API (JPA)

Relational Database

Page 5: Building Applications with Eclipse Frameworks and Tools for Oracle

Eclipse and Oracle | © 2008 Oracle; made available under the EPL v1.0 5

Tools for Enterprise Java Development

EJB 3

JavaServer Faces (JSF)

Java Persistence API (JPA)

Data Tools Relational Database

Page 6: Building Applications with Eclipse Frameworks and Tools for Oracle

Eclipse and Oracle | © 2008 Oracle; made available under the EPL v1.0 6

Relational Data—Data Tools

EJB 3

Relational Database

JavaServer Faces (JSF)

Java Persistence API (JPA)

Data Tools

Page 7: Building Applications with Eclipse Frameworks and Tools for Oracle

Eclipse and Oracle | © 2008 Oracle; made available under the EPL v1.0 7

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

Page 8: Building Applications with Eclipse Frameworks and Tools for Oracle

Eclipse and Oracle | © 2008 Oracle; made available under the EPL v1.0 8

Oracle Database Plugin—Navigating & Editing

Page 9: Building Applications with Eclipse Frameworks and Tools for Oracle

Eclipse and Oracle | © 2008 Oracle; made available under the EPL v1.0 9

Oracle Database Plugin—Explain Plan

Page 10: Building Applications with Eclipse Frameworks and Tools for Oracle

Eclipse and Oracle | © 2008 Oracle; made available under the EPL v1.0 10

Java Persistence—Dali

EJB 3

JavaServer Faces (JSF)

Java Persistence API (JPA)

Data Tools Relational Database

Page 11: Building Applications with Eclipse Frameworks and Tools for Oracle

Eclipse and Oracle | © 2008 Oracle; made available under the EPL v1.0 11

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)

Page 12: Building Applications with Eclipse Frameworks and Tools for Oracle

Eclipse and Oracle | © 2008 Oracle; made available under the EPL v1.0 12

Why do you need JPA Tools?

JPA runtime combines: Java Classes

Mapping Metadata

Database schema

Database

Java SE/EE

JPAPersistenceProviderMapping Metadata

Java Classes

Database Schema

Design Time Runtime

Page 13: Building Applications with Eclipse Frameworks and Tools for Oracle

Eclipse and Oracle | © 2008 Oracle; made available under the EPL v1.0 13

Why do you need JPA Tools?

How can you tell if they all match?

Deploy and run tests?

slowfind one problem at a time (fix, run, fix, …)definitive

Design time validation?

quickfinds all issuesvalidates against specruntime may not match spec

Database

Java SE/EE

JPAPersistenceProviderMapping Metadata

Java Classes

Database Schema

Design Time Runtime

Page 14: Building Applications with Eclipse Frameworks and Tools for Oracle

Eclipse and Oracle | © 2008 Oracle; made available under the EPL v1.0 14

DEMO

Page 15: Building Applications with Eclipse Frameworks and Tools for Oracle

Eclipse and Oracle | © 2008 Oracle; made available under the EPL v1.0 15

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

Page 16: Building Applications with Eclipse Frameworks and Tools for Oracle

Eclipse and Oracle | © 2008 Oracle; made available under the EPL v1.0 16

JDBC

Eclipse Persistence Services (EclipseLink)

RelationalDatabases

JPA MOXy SDO DBWS EIS

Java SE, Java EE, SCA, Spring, OSGi

Legacy SystemsXML

Packaged Apps

JCA

Page 17: Building Applications with Eclipse Frameworks and Tools for Oracle

Eclipse and Oracle | © 2008 Oracle; made available under the EPL v1.0 17

History of EclipseLink

1996 2008

Page 18: Building Applications with Eclipse Frameworks and Tools for Oracle

Eclipse and Oracle | © 2008 Oracle; made available under the EPL v1.0 18

EclipseLink

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

News Flash! EclipseLink will provideJPA 2.0 Reference Implemenation

Page 19: Building Applications with Eclipse Frameworks and Tools for Oracle

Eclipse and Oracle | © 2008 Oracle; made available under the EPL v1.0 19

DEMO

Page 20: Building Applications with Eclipse Frameworks and Tools for Oracle

Eclipse and Oracle | © 2008 Oracle; made available under the EPL v1.0 20

EJB 3—Web Tools

EJB 3

JavaServer Faces (JSF)

Java Persistence API (JPA)

Data Tools Relational Database

Page 21: Building Applications with Eclipse Frameworks and Tools for Oracle

Eclipse and Oracle | © 2008 Oracle; made available under the EPL v1.0 21

EJB 3—Web Tools

Available now in Milestone Ganymede builds

Page 22: Building Applications with Eclipse Frameworks and Tools for Oracle

Eclipse and Oracle | © 2008 Oracle; made available under the EPL v1.0 22

JavaServer Faces—JSF Tools

EJB 3

JavaServer Faces (JSF)

Java Persistence API (JPA)

Data Tools Relational Database

Page 23: Building Applications with Eclipse Frameworks and Tools for Oracle

Eclipse and Oracle | © 2008 Oracle; made available under the EPL v1.0 23

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

Page 24: Building Applications with Eclipse Frameworks and Tools for Oracle

Eclipse and Oracle | © 2008 Oracle; made available under the EPL v1.0 24

Web Page Editor

Page 25: Building Applications with Eclipse Frameworks and Tools for Oracle

Eclipse and Oracle | © 2008 Oracle; made available under the EPL v1.0 25

Web Page Editor – Apache MyFaces Trinidad

Page 26: Building Applications with Eclipse Frameworks and Tools for Oracle

Eclipse and Oracle | © 2008 Oracle; made available under the EPL v1.0 26

Content Assists, Syntactic and Semantic Validations

Content Assists Semantic Validation

Validation preference

Page 27: Building Applications with Eclipse Frameworks and Tools for Oracle

Eclipse and Oracle | © 2008 Oracle; made available under the EPL v1.0 27

Faces Configuration Editor

Page 28: Building Applications with Eclipse Frameworks and Tools for Oracle

Eclipse and Oracle | © 2008 Oracle; made available under the EPL v1.0 28

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

Page 29: Building Applications with Eclipse Frameworks and Tools for Oracle

Eclipse and Oracle | © 2008 Oracle; made available under the EPL v1.0 29

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

Page 30: Building Applications with Eclipse Frameworks and Tools for Oracle

Eclipse and Oracle | © 2008 Oracle; made available under the EPL v1.0 30

Tag Content Assist

Page 31: Building Applications with Eclipse Frameworks and Tools for Oracle

Eclipse and Oracle | © 2008 Oracle; made available under the EPL v1.0 31

Validation

Page 32: Building Applications with Eclipse Frameworks and Tools for Oracle

Eclipse and Oracle | © 2008 Oracle; made available under the EPL v1.0 32

Running Enterprise Java Applications

EJB 3

JavaServer Faces (JSF)

EcilpseLink JPA

Relational Database

Page 33: Building Applications with Eclipse Frameworks and Tools for Oracle

Eclipse and Oracle | © 2008 Oracle; made available under the EPL v1.0 33

Oracle Containers for Java EE (OC4J)Java EE, Persistence, Messaging and Web Services

Middleware Administration Server

Kernel and JMX Infrastructure

Oracle Containers for Java EE

BPELBPEL Web CenterWeb Center RulesRulesESBESB

SchedulerScheduler ASControlASControlADFADF JMS RouterJMS Router

FMW Applications/Frameworks

EJBBusiness

Logic

JPAPersistence

JSF/ServletPresentation

JMSMessaging

JCAConnectivity

WebServices

ConnectionPooling

TopLinkPersistence

InfrastructureTransactions

ProtocolHandling Security

ResourceManagement

Page 34: Building Applications with Eclipse Frameworks and Tools for Oracle

Eclipse and Oracle | © 2008 Oracle; made available under the EPL v1.0 34

SPECjAppServer2004—Leadership In All Categories

Application Server Platform/CPU/CoresSPECjAppServer2004

JOPS@Standard

ServerNodes

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 1950Harpertown Xeon E5440, 16 Cores 3,595 2

Nov 2007

World Record, Dual Node

HP Proliant BL460c G1Harpertown 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

4368

8253

10519

IBM BEA Oracle

Best Multi-Node Result

Best on RAC Result

Best Dual Node Result

Best Single Node Result

Best on One CPU Result

See: http://www.spec.org/jAppServer2004/results/

Page 35: Building Applications with Eclipse Frameworks and Tools for Oracle

Eclipse and Oracle | © 2008 Oracle; made available under the EPL v1.0 35

Highest Quality of Service Performance

Scalability

Availability

Security Lowest Cost Easier to Manage Reduce risk of change

Page 36: Building Applications with Eclipse Frameworks and Tools for Oracle

Eclipse and Oracle | © 2008 Oracle; made available under the EPL v1.0 36

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)

Page 37: Building Applications with Eclipse Frameworks and Tools for Oracle

Eclipse and Oracle | © 2008 Oracle; made available under the EPL v1.0 37

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

Page 38: Building Applications with Eclipse Frameworks and Tools for Oracle

Eclipse and Oracle | © 2008 Oracle; made available under the EPL v1.0 38

Any questions?

EcilpseLink—www.ecilpse.org/eclipselinkDali—www.eclipse.org/daliJSF Tools—www.eclipse.org/webtools/jsf