KEMBAR78
Java EE 7 - Into the Cloud | PDF
1   Markus Eisele, Insurance - Strategic IT-Architecture   msg systems ag, 17.10.2011
Agenda



        1.   Java EE – Past, Present and Future
        2.   Java EE 7 – Platform as a Service
        3.   PaaS Roadmap
        4.   Focus Areas
        5.   All the Specs




2                                Markus Eisele, Insurance - Strategic IT-Architecture   msg systems ag, 17.10.2011
http://blog.eisele.net

http://twitter.com/myfear

markus.eisele@msg-systems.com
3                               Markus Eisele, Insurance - Strategic IT-Architecture   msg systems ag, 17.10.2011
Java EE Past, Present and Future

                                                                                                                       Cloud

                                                                                                 Flexible           Java EE 7

                                                                              Ease of                               Multi-tenancy,
                                                                                               Java EE 6              Isolation
                                                                            Development
                                                                                                  Pruning            Application
                                                                                                Extensibility        Versioning,
                                                        Web                  Java EE 5            Profiles           Packaging
                                                      Services                                  Ease-of-dev
                                                                                Ease of
                                                                                                 EJB Lite           Virtualization
                                                                             Development
                                                                                                RESTful WS
                                                     J2EE 1.4                Annotations
                                                                                                    CDI              Modularity
                                                                               EJB 3.0
                                Robustness                                  Persistence API
                                                    Web Services,                                                    New Roles
                                                    Management,                New and
                Enterprise      J2EE 1.3            Deployment,                Updated
                   Java                                Async.                Web Services
                 Platform          CMP,                    `
                                                     Connector
                                 Connector
                J2EE 1.2        Architecture
                                                                                               Web Profile
                                                                                                   &
                Servlet, JSP,                                                                   Managed
                 EJB, JMS                                                                      Beans 1.0
      JPE        RMI/IIOP
     Project


     May 1998    Dec 1999        Sep 2001              Nov 2003                 May 2006         Dec 2009             Q3 2012
                 10 specs        13 specs              20 specs                 23 specs         28 specs            28+ specs


4                                       Markus Eisele, Insurance - Strategic IT-Architecture                    msg systems ag, 17.10.2011
Java EE 7 Focus : Platform as a Service




         • Provide way for customers and users to
           leverage public, private, and hybrid clouds
         • PaaS support entails evolutionary change
         • Next logical step for Java EE
               J2EE -> Java EE 6 : The Java EE Platform provides
                services
               Java EE 7 : The Java EE Platform IS a service




5                               Markus Eisele, Insurance - Strategic IT-Architecture   msg systems ag, 17.10.2011
Java EE 7 PaaS Roadmap




         • Define new platform roles to accommodate
           PaaS model
         • Add metadata
                For service provisioning and configuration
                For QoS, elasticity
                For sharing of applications and resources
                For (re)configurability and customization
         • Add useful APIs for cloud environment
              JAX-RS client API, Caching API, State
               Management, JSON,…
         • Extend existing APIs with support for
           multitenancy

6                             Markus Eisele, Insurance - Strategic IT-Architecture   msg systems ag, 17.10.2011
Java EE 7 Roles




7                     Markus Eisele, Insurance - Strategic IT-Architecture   msg systems ag, 17.10.2011
Cloud Services – not just APIs




         • In the cloud tenant
           applications consume
           services
         • PaaS administrators host,
           configure, and manage
           application and
           infrastructure services
         • Existing APIs in Java EE
           need to be updated to be
           service-enabled and
           tenant-aware
               Example: pluggable
                services, late binding and
                tenant id injection


8                                Markus Eisele, Insurance - Strategic IT-Architecture   msg systems ag, 17.10.2011
Auto-Provision Services from Application Dependencies




         • Old Java EE Model
               Configure Java EE
                resources – JDBC, JMS
                etc
               Deploy Application EAR
         • Java EE 7 Model
               Provision and deploy
                application resources
                (e.g. LDAP stripe, data
                source instantiation and
                connection …)
         • Extensible Deployment
           Models Supporting
           Multiple Frameworks
               Spring, Seam, Play …

9                              Markus Eisele, Insurance - Strategic IT-Architecture   msg systems ag, 17.10.2011
Elasticity




           • Service Levels
           • Minimum and Maximum Instances
           • Futures – Self Adjustment, Capacity On Demand



10                           Markus Eisele, Insurance - Strategic IT-Architecture   msg systems ag, 17.10.2011
And … not only clouds:



          • Alignment of ManagedBeans across CDI,
            EJB, JSF,…
               POJO -> ManagedBean -> Enterprise JavaBean
               Extension of container-managed transactions
                beyond EJB
          • Further simplifications for ease-of-
            development
               JMS 2.0 focus on ease-of-development
               Expanded use of dependency injection
               Expanded service metadata; improved configuration
          • Pruning
               EJB CMP and BMP, JAX-RPC, Deployment API
          • Update to Web Profile
11                            Markus Eisele, Insurance - Strategic IT-Architecture   msg systems ag, 17.10.2011
JPA 2.1




          • JPA 2.1 (JSR 338)
            The first spec to include new features is the
            JPA 2.1. The new features can be described
            with the following short list:
            - Multi-Tenancy (Table discriminator)
            - Stored Procedures
            - Custom types and transformation methods -
            Query by Example
            - Dynamic PU Definition
            - Schema Generation (Additional mapping
            metadata to provide better standardization)



12                        Markus Eisele, Insurance - Strategic IT-Architecture   msg systems ag, 17.10.2011
JMS 2.0




          • JMS 2.0 (JSR 343)
            This could be considered as the most mature
            spec in general. It had a long 9 years to go
            since it's last maintenance release (April
            2002).
            - Modest scope
            - Ease of development
            - Pluggable JMS provider
            - Extensions to support “Cloud”




13                        Markus Eisele, Insurance - Strategic IT-Architecture   msg systems ag, 17.10.2011
EJB 3.2



          • EJB 3.2 (JSR 345) The goal of Enterprise
            JavaBeans 3.2 is to consolidate these
            advances and to continue to simplify the EJB
            architecture as well as to provide support for
            the Java EE platform-wide goal of further
            enabling cloud computing. The scope of EJB
            3.2 is intended to be relatively constrained in
            focusing on these goals.
            - Incremental factorization (Interceptors)
            - Further use of annotations to simplify the
            EJB programming model
            - Proposed Optional: BMP/CMP
            - Proposed Optional: Web Services invocation
            using RPC
14                        Markus Eisele, Insurance - Strategic IT-Architecture   msg systems ag, 17.10.2011
CDI 1.1




          • CDI 1.1 (JSR 346) Since the final release of
            the CDI 1.0 specification a number of issues
            have been identified by the community and a
            update to the specification will allow these to
            be addressed. A list of proposed updates is
            provided here, however the EG will consider
            other issues raised as the JSR progresses.
            - Embedded mode
            - Lifecycle Events
            - Declarative package scanning
            - Global ordering of interceptors and
            decorators
            - Injection Static Variables
15                         Markus Eisele, Insurance - Strategic IT-Architecture   msg systems ag, 17.10.2011
Servlet 3.1




           • Servlet 3.1 (JSR 340)
             In developing the servlet specification 3.1 the
             EG will take into consideration any
             requirements from the platform to optimize the
             Platform as a Service (PasS) model for web
             applications. Beside this, the following areas
             should be addressed.
             - Cloud support
             - NIO.2 async I/O
             - Leverage Java EE concurrency
             - Security improvements
             - Web Sockets support
             - Ease-of-Development
16                         Markus Eisele, Insurance - Strategic IT-Architecture   msg systems ag, 17.10.2011
JSF 2.2




          • JSF 2.2 (JSR 344) The new JSF JSR will be a
            significant feature update that builds on the
            advances from the previous JavaServer Faces
            versions.
            - Ease-of-Development
            - HTML 5 support (Forms, Headings,
            Metadata)
            - New components
            - Portlet Integration




17                        Markus Eisele, Insurance - Strategic IT-Architecture   msg systems ag, 17.10.2011
JAX-RS 2.0




          • JAX-RS 2.0 (JSR 339)
            JAX-RS addresses most requested
            community features. To name a few: - Client
            API
            - Hypermedia
            - The primary API utilized for validation will be
            the Bean Validation API
            - Ease-of-Development




18                         Markus Eisele, Insurance - Strategic IT-Architecture   msg systems ag, 17.10.2011
Expression Lanugage 3.0




          • Expression Language 3.0 (JSR 341) The
            Expression Language (EL), has been part of
            JSP specification since JSP 2.0. In Java EE 7
            this will become a separate JSR.
            - Standalone JSR
            - Easier to use outside container
            - Criteria-based Collection selection
            - New operators
            - CDI events for expression eval




19                             Markus Eisele, Insurance - Strategic IT-Architecture   msg systems ag, 17.10.2011
Bean Validation 1.1




          • Bean Validation 1.1 (JSR 349) Being a
            version 1.0, Bean Validation stayed on the
            conservative side feature wise. The
            community has expressed interest in
            additional features to enhance the work done
            in the first version of the specification.
            - Integration with other JSRs (JAXRS, JAXB,
            JPA, CDI, EJB, JSF)
            - Method-level validation
            - Constraint composition




20                         Markus Eisele, Insurance - Strategic IT-Architecture   msg systems ag, 17.10.2011
MR Releases



          •   Common Annotations 1.2 MR
          •   JAX-WS 2.3 MR
          •   JTA 1.2 MR
          •   JSP 2.3 MR
          •   JASPIC 1.2 MR




21                              Markus Eisele, Insurance - Strategic IT-Architecture   msg systems ag, 17.10.2011
Candiadates




          •   Jcache 1.0 (JSR 107)
          •   Concurrency Utilities 1.0 (JSR-236),
          •   State Management 1.0
          •   Batch Processing 1.0
          •   JSON 1.0




22                          Markus Eisele, Insurance - Strategic IT-Architecture   msg systems ag, 17.10.2011
Status and Schedule




          •   Nearly all JSRs up and running
          •   Remaining ones to be filed in next few weeks
          •   Final release target: Q3 2012
          •   Date-driven release: anything not ready will be
              deferred to Java EE 8




23                          Markus Eisele, Insurance - Strategic IT-Architecture   msg systems ag, 17.10.2011
Links and Readings



          •   Enterprise Software Development mit Java Blog:
                  http://blog.eisele.net
          •   Java EE 7 Expert Group Page
                  http://javaee-spec.java.net
                  One project per spec – e.g., jpa-spec, jax-rs-spec, jms-spec…
          •   Java EE 7 Reference Implementation
                  http://glassfish.org
          •   The Aquarium
                  http://blogs.oracle.com/theaquarium
          •   Arun Gupta„s Blog „Miles to go…“
                  http://blogs.oracle.com/arungupta




24                                        Markus Eisele, Insurance - Strategic IT-Architecture   msg systems ag, 17.10.2011
Disclaimer




      The thoughts expressed here are
      the personal opinions of the author
      and no official statement
      of the msg systems ag.




25                   Markus Eisele, Oracle ACE Director FMW & SOA   msg systems ag, 2011
Vielen Dank für Ihre Aufmerksamkeit




     Markus Eisele


     markus.eisele@msg-systems.com


     www.msg-systems.com




                                  www.msg-systems.com




26                         Markus Eisele, Insurance - Strategic IT-Architecture   msg systems ag, 17.10.2011

Java EE 7 - Into the Cloud

  • 1.
    1 Markus Eisele, Insurance - Strategic IT-Architecture msg systems ag, 17.10.2011
  • 2.
    Agenda 1. Java EE – Past, Present and Future 2. Java EE 7 – Platform as a Service 3. PaaS Roadmap 4. Focus Areas 5. All the Specs 2 Markus Eisele, Insurance - Strategic IT-Architecture msg systems ag, 17.10.2011
  • 3.
    http://blog.eisele.net http://twitter.com/myfear markus.eisele@msg-systems.com 3 Markus Eisele, Insurance - Strategic IT-Architecture msg systems ag, 17.10.2011
  • 4.
    Java EE Past,Present and Future Cloud Flexible Java EE 7 Ease of Multi-tenancy, Java EE 6 Isolation Development Pruning Application Extensibility Versioning, Web Java EE 5 Profiles Packaging Services Ease-of-dev Ease of EJB Lite Virtualization Development RESTful WS J2EE 1.4 Annotations CDI Modularity EJB 3.0 Robustness Persistence API Web Services, New Roles Management, New and Enterprise J2EE 1.3 Deployment, Updated Java Async. Web Services Platform CMP, ` Connector Connector J2EE 1.2 Architecture Web Profile & Servlet, JSP, Managed EJB, JMS Beans 1.0 JPE RMI/IIOP Project May 1998 Dec 1999 Sep 2001 Nov 2003 May 2006 Dec 2009 Q3 2012 10 specs 13 specs 20 specs 23 specs 28 specs 28+ specs 4 Markus Eisele, Insurance - Strategic IT-Architecture msg systems ag, 17.10.2011
  • 5.
    Java EE 7Focus : Platform as a Service • Provide way for customers and users to leverage public, private, and hybrid clouds • PaaS support entails evolutionary change • Next logical step for Java EE  J2EE -> Java EE 6 : The Java EE Platform provides services  Java EE 7 : The Java EE Platform IS a service 5 Markus Eisele, Insurance - Strategic IT-Architecture msg systems ag, 17.10.2011
  • 6.
    Java EE 7PaaS Roadmap • Define new platform roles to accommodate PaaS model • Add metadata  For service provisioning and configuration  For QoS, elasticity  For sharing of applications and resources  For (re)configurability and customization • Add useful APIs for cloud environment  JAX-RS client API, Caching API, State Management, JSON,… • Extend existing APIs with support for multitenancy 6 Markus Eisele, Insurance - Strategic IT-Architecture msg systems ag, 17.10.2011
  • 7.
    Java EE 7Roles 7 Markus Eisele, Insurance - Strategic IT-Architecture msg systems ag, 17.10.2011
  • 8.
    Cloud Services –not just APIs • In the cloud tenant applications consume services • PaaS administrators host, configure, and manage application and infrastructure services • Existing APIs in Java EE need to be updated to be service-enabled and tenant-aware  Example: pluggable services, late binding and tenant id injection 8 Markus Eisele, Insurance - Strategic IT-Architecture msg systems ag, 17.10.2011
  • 9.
    Auto-Provision Services fromApplication Dependencies • Old Java EE Model  Configure Java EE resources – JDBC, JMS etc  Deploy Application EAR • Java EE 7 Model  Provision and deploy application resources (e.g. LDAP stripe, data source instantiation and connection …) • Extensible Deployment Models Supporting Multiple Frameworks  Spring, Seam, Play … 9 Markus Eisele, Insurance - Strategic IT-Architecture msg systems ag, 17.10.2011
  • 10.
    Elasticity • Service Levels • Minimum and Maximum Instances • Futures – Self Adjustment, Capacity On Demand 10 Markus Eisele, Insurance - Strategic IT-Architecture msg systems ag, 17.10.2011
  • 11.
    And … notonly clouds: • Alignment of ManagedBeans across CDI, EJB, JSF,…  POJO -> ManagedBean -> Enterprise JavaBean  Extension of container-managed transactions beyond EJB • Further simplifications for ease-of- development  JMS 2.0 focus on ease-of-development  Expanded use of dependency injection  Expanded service metadata; improved configuration • Pruning  EJB CMP and BMP, JAX-RPC, Deployment API • Update to Web Profile 11 Markus Eisele, Insurance - Strategic IT-Architecture msg systems ag, 17.10.2011
  • 12.
    JPA 2.1 • JPA 2.1 (JSR 338) The first spec to include new features is the JPA 2.1. The new features can be described with the following short list: - Multi-Tenancy (Table discriminator) - Stored Procedures - Custom types and transformation methods - Query by Example - Dynamic PU Definition - Schema Generation (Additional mapping metadata to provide better standardization) 12 Markus Eisele, Insurance - Strategic IT-Architecture msg systems ag, 17.10.2011
  • 13.
    JMS 2.0 • JMS 2.0 (JSR 343) This could be considered as the most mature spec in general. It had a long 9 years to go since it's last maintenance release (April 2002). - Modest scope - Ease of development - Pluggable JMS provider - Extensions to support “Cloud” 13 Markus Eisele, Insurance - Strategic IT-Architecture msg systems ag, 17.10.2011
  • 14.
    EJB 3.2 • EJB 3.2 (JSR 345) The goal of Enterprise JavaBeans 3.2 is to consolidate these advances and to continue to simplify the EJB architecture as well as to provide support for the Java EE platform-wide goal of further enabling cloud computing. The scope of EJB 3.2 is intended to be relatively constrained in focusing on these goals. - Incremental factorization (Interceptors) - Further use of annotations to simplify the EJB programming model - Proposed Optional: BMP/CMP - Proposed Optional: Web Services invocation using RPC 14 Markus Eisele, Insurance - Strategic IT-Architecture msg systems ag, 17.10.2011
  • 15.
    CDI 1.1 • CDI 1.1 (JSR 346) Since the final release of the CDI 1.0 specification a number of issues have been identified by the community and a update to the specification will allow these to be addressed. A list of proposed updates is provided here, however the EG will consider other issues raised as the JSR progresses. - Embedded mode - Lifecycle Events - Declarative package scanning - Global ordering of interceptors and decorators - Injection Static Variables 15 Markus Eisele, Insurance - Strategic IT-Architecture msg systems ag, 17.10.2011
  • 16.
    Servlet 3.1 • Servlet 3.1 (JSR 340) In developing the servlet specification 3.1 the EG will take into consideration any requirements from the platform to optimize the Platform as a Service (PasS) model for web applications. Beside this, the following areas should be addressed. - Cloud support - NIO.2 async I/O - Leverage Java EE concurrency - Security improvements - Web Sockets support - Ease-of-Development 16 Markus Eisele, Insurance - Strategic IT-Architecture msg systems ag, 17.10.2011
  • 17.
    JSF 2.2 • JSF 2.2 (JSR 344) The new JSF JSR will be a significant feature update that builds on the advances from the previous JavaServer Faces versions. - Ease-of-Development - HTML 5 support (Forms, Headings, Metadata) - New components - Portlet Integration 17 Markus Eisele, Insurance - Strategic IT-Architecture msg systems ag, 17.10.2011
  • 18.
    JAX-RS 2.0 • JAX-RS 2.0 (JSR 339) JAX-RS addresses most requested community features. To name a few: - Client API - Hypermedia - The primary API utilized for validation will be the Bean Validation API - Ease-of-Development 18 Markus Eisele, Insurance - Strategic IT-Architecture msg systems ag, 17.10.2011
  • 19.
    Expression Lanugage 3.0 • Expression Language 3.0 (JSR 341) The Expression Language (EL), has been part of JSP specification since JSP 2.0. In Java EE 7 this will become a separate JSR. - Standalone JSR - Easier to use outside container - Criteria-based Collection selection - New operators - CDI events for expression eval 19 Markus Eisele, Insurance - Strategic IT-Architecture msg systems ag, 17.10.2011
  • 20.
    Bean Validation 1.1 • Bean Validation 1.1 (JSR 349) Being a version 1.0, Bean Validation stayed on the conservative side feature wise. The community has expressed interest in additional features to enhance the work done in the first version of the specification. - Integration with other JSRs (JAXRS, JAXB, JPA, CDI, EJB, JSF) - Method-level validation - Constraint composition 20 Markus Eisele, Insurance - Strategic IT-Architecture msg systems ag, 17.10.2011
  • 21.
    MR Releases • Common Annotations 1.2 MR • JAX-WS 2.3 MR • JTA 1.2 MR • JSP 2.3 MR • JASPIC 1.2 MR 21 Markus Eisele, Insurance - Strategic IT-Architecture msg systems ag, 17.10.2011
  • 22.
    Candiadates • Jcache 1.0 (JSR 107) • Concurrency Utilities 1.0 (JSR-236), • State Management 1.0 • Batch Processing 1.0 • JSON 1.0 22 Markus Eisele, Insurance - Strategic IT-Architecture msg systems ag, 17.10.2011
  • 23.
    Status and Schedule • Nearly all JSRs up and running • Remaining ones to be filed in next few weeks • Final release target: Q3 2012 • Date-driven release: anything not ready will be deferred to Java EE 8 23 Markus Eisele, Insurance - Strategic IT-Architecture msg systems ag, 17.10.2011
  • 24.
    Links and Readings • Enterprise Software Development mit Java Blog:  http://blog.eisele.net • Java EE 7 Expert Group Page  http://javaee-spec.java.net  One project per spec – e.g., jpa-spec, jax-rs-spec, jms-spec… • Java EE 7 Reference Implementation  http://glassfish.org • The Aquarium  http://blogs.oracle.com/theaquarium • Arun Gupta„s Blog „Miles to go…“  http://blogs.oracle.com/arungupta 24 Markus Eisele, Insurance - Strategic IT-Architecture msg systems ag, 17.10.2011
  • 25.
    Disclaimer The thoughts expressed here are the personal opinions of the author and no official statement of the msg systems ag. 25 Markus Eisele, Oracle ACE Director FMW & SOA msg systems ag, 2011
  • 26.
    Vielen Dank fürIhre Aufmerksamkeit Markus Eisele markus.eisele@msg-systems.com www.msg-systems.com www.msg-systems.com 26 Markus Eisele, Insurance - Strategic IT-Architecture msg systems ag, 17.10.2011