Tools Coverage for the Java EE Platform @ Silicon Valley Code Camp 2010
Upcoming SlideShare
Loading in...5
×
 

Like this? Share it with your network

Share

Tools Coverage for the Java EE Platform @ Silicon Valley Code Camp 2010

on

  • 1,556 views

Tools Coverage for the Java EE Platform @ Silicon Valley Code Camp 2010

Tools Coverage for the Java EE Platform @ Silicon Valley Code Camp 2010

Statistics

Views

Total Views
1,556
Views on SlideShare
1,551
Embed Views
5

Actions

Likes
0
Downloads
20
Comments
0

2 Embeds 5

http://blogs.sun.com 4
http://blogs.oracle.com 1

Accessibility

Categories

Upload Details

Uploaded via as Adobe PDF

Usage Rights

© All Rights Reserved

Report content

Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

Cancel
  • Full Name Full Name Comment goes here.
    Are you sure you want to
    Your message goes here
    Processing…
Post Comment
Edit your comment

Tools Coverage for the Java EE Platform @ Silicon Valley Code Camp 2010 Presentation Transcript

  • 1. <Insert Picture Here> Tools Coverage for the Java EE 6 Platform Ludovic Champenois GlassFish
  • 2. AGENDA • Java EE 6: Overview And Status • Tools Support and Demos – In NetBeans, Eclipse, IntelliJ • Demo 1: Server runtime • Demo 2: JPA • Demo 3: JSF2.0 • Demo 4: CDI • Demo 5: RestFul Services Jax-RS • Q&A 3
  • 3. Java EE 6 • What's New? – Lots of improvements to existing EE 5 APIs – Several New APIs – Web Profile – Pluggability/Extensibility – Dependency Injection • A Major new release for Java Enterprise Applications – Easier, Smaller, Extensible – GlassFish 3 is the Reference Implementation (and a quality product...) – GlassFish 3.1 is adding Clustering support 4
  • 4. Java EE 6: Fast Uptake within Open Source and Commercial Community Available Announced 5
  • 5. Java EE 6: New and Updated components Updated Components New Components Tools Support? • EJB 3.1 ● JAX-RS 1.1 • Netbeans • JPA 2.0 ● CDI 1.0 • Eclipse ● Bean Validation 1.0 • Servlet 3.0 ● DI 1.0 • IntelliJ • JSF 2.0 ● Managed Beans 1.0 • Complete Support ● JASPIC 1.1 • Interceptors 1.1 ● • Partial Support... • JAX-WS 2.2 • JSR-109 1.3 • JSP 2.2 • EL 2.2 JSR-250 1.1 • JACC 1.5 Connectors 1.6 6
  • 6. Java EE 6: Impact on Tools • New APIs are easy to expose: – Libraries in project path. More and more on Maven (EE 6 APIs in Maven) – Automatic Code completion – JavaDoc: Some IDEs... • New Concepts: – JSF 2.0: face-config obsolete, ManagedBeans obsolete (->CDI) – JAX-RS – No Web.xml, more annotations • New Packaging: – EBJ Inside Web Application Projects! – Web Profile versus Full Profile 7
  • 7. Java EE 6 : Impact on Tools • Alignment of Platform changes and the IDEs – Emacs (James Gosling 81), vi (Bill Joy 76): First IDES choice • Java EE 6 compliant – NetBeans 6.8: same day as Java EE 6 GlassFish (Dec 2009) • Almost everything but CDI and advanced JF 2.0 (fixed in 6.9) – IntelliJ: Same week as Java EE 6 • GlassFish Runtime target Supported in Dec 2009 • Eclipse: – ava EE 6 support June 2010 – But GlassFish Plugin with EE 6 support before... – Oracle Enterprise Pack for Eclipse 8
  • 8. Oracle Involvement In Java EE 6 And Tools • Oracle is the main driver of the GlassFish Community – The Java EE 6 Reference Implementation – Production Ready (Clustering, HA,...) • Oracle is the main driver of the NetBeans Community – Tight coupling with Java SE and EE changes. • Oracle has many Eclipse Committers – In JPA: EclipseLink Runtime and Dali Tooling – In Core Java EE tooling – In JSF: Most JSF WTP Eclipse tooling done by Oracle folks • Jboss Tools has their own JSF tooling – GlassFish and Weblogic support via OEPE 9
  • 9. Java EE 6: Oracle Gives Developer Choices Oracle Enterprise Pack for Eclipse NetBeans 6.9.1 and Coming 6.10 Target WebLogic and GlassFish 3 Bundled with GlassFish 3 IntelliJ IDEA has great Java EE 6 Support 10
  • 10. Java EE 6 Runtime in Tools: NetBeans Eclipse IntelliJ • NetBeans 6.8: same day • Eclipse 3.5 WTP GlassFish Plugin • IntelliJ 9.0 same week as Java EE as Java EE 6 GlassFish for Java EE 6 6 • NetBeans 6.9.1 and 7.0 • Eclipse 3.6 (June 2010): initial nightlies: complete EE 6 support for Java EE 6, far from support being Complete • GlassFish Plugin in OEPE and a • GlassFish Plugin bundled • GlassFish Support bundled dev Update Center • GlassFish Runtime • No bundle at this time, can Bundled and download the runtime via the • No Bundle, need separate dowload Preconfigured plugin • EveryThing works Out of • Manual Configurations, a bit • Some manual Configurations the Box difficult 11
  • 11. Java EE 6: Working with a GlassFish Server in the Tools. 12
  • 12. Java EE 6 Working with Databases • Via JPA 2.0 • Out of the Box, GlassFish 3 bundles JavaDB – Registered in NetBeans and Eclipse • All IDEs can register DB Resources and Introspect • All IDEs can Generate JPA From DB • All IDEs give decent Mapping Tooling • Can Start/Stop Dbs only in NetBeans! • NetBeans has extra Wizards to Generate CRUD JSF2 • NetBeans has better Default in Persistence.xml • IntelliJ has some ER/UML view and JP/QL Support 13
  • 13. Java EE 6 JPA Demo 14
  • 14. JSF 2.0 • Faceletes is the foundation – XHTML and tags – Templating • ui:include, ui:composition, ui:define,... – Composite Components • Reusable • Turn page markup into a JSF UI component • Managed Beans – Annotations (faces-config is optional) – JSF APIs or – CDI APIs (Preferred) • CDI support (@Named, @Inject, @SessionScoped,...) 15
  • 15. JSF 2.0 Tooling • NetBeans and IntelliJ are best – XHTML/Facelet Editor • Code Completion, Beans navigation – NetBeans 6.10 bundles Primefaces components > – JPA to JSF 2.0 Wizards (only NetBeans) – Create Composite Components automatically • Eclipse is really lacking the new features with CDI and annotations 16
  • 16. Java EE 6 JSF 2.0 Demo 17
  • 17. Java EE 6 CDI: Contexts and Dependency Injection JSF/Facelets Servlets ●Dependency injection ● Builds on @Inject API ●Context/scope management JSF/Facelets ●Works with multiple bean types Managed Bean ●Includes ELResolver MDB ●Ejb Session and Singleton Web Services Managed Bean ● The CDI Container will ● Resolve dependencies CDI Container ● Offer the bean for Injection 18
  • 18. Java EE 6 CDI Tooling • Should be easy: – Enable CDI in a Module: Create an empty beans.xml file – Use @Inject, @Named, @SessionScoped, @ApplicationScoped • Only Need EE 6 APIs in Path and Code Completion. • JavaDoc a Goody • But in EL (Facelets and JSP): Code Completion? – Not for Eclipse at this moment. Only in NetBeans and IntelliJ 19
  • 19. Java EE 6 CDI Demo 20
  • 20. JAX-RS • REST made easy • Java Annotation Based Resource Creation – Identity of Resources – Self-Descriptive Resources – Navigation between Resources – Representation choices • CRUD Operations: GET, DELETE, POST, PUT 21
  • 21. Java EE 6 Jax-RS and Web Services • Simple REST Resources Creation • Advanced Wizards Generating – Only in NetBeans • Resources from Database • Resources from Entity Classes • Resources from Patterns • JAX-WS: – Service Creation – Testing Web Services: Advantage NetBeans – Eclipse is Axis based 22
  • 22. Java EE 6 REST Web Services Demo 23
  • 23. Java EE 6 In IDEs • IntelliJ http://www.jetbrains.com/idea/ • Eclipse https://glassfishplugins.dev.java.net/ • NetBeans http://netbeans.org/ 24