X

An Oracle blog about Java Technology

Java EE 7 Roadmap

The Java EE 6 Platform, released in December 2009, has seen great
uptake from the community with its POJO-based programming model,
lightweight Web Profile, and extension points. There are now 13 Java
EE 6 compliant appserver implementations today!

When we announced the Java EE 7 JSR back in early 2011, our plans were
that we would release it by Q4 2012. This target date was slightly
over three years after the release of Java EE 6, but at the same time
it meant that we had less than two years to complete a fairly
comprehensive agenda — to continue to invest in significant
enhancements in simplification, usability, and functionality in
updated versions of the JSRs that are currently part of the platform;
to introduce new JSRs that reflect emerging needs in the community;
and to add support for use in cloud environments. We have since
announced a minor adjustment in our dates (to the spring of 2013) in
order to accommodate the inclusion of JSRs of importance to the
community, such as Web Sockets and JSON-P.

At this point, however, we have to make a choice.

Despite our best intentions, our progress has been slow on the cloud
side of our agenda. Partially this has been due to a lack of maturity
in the space for provisioning, multi-tenancy, elasticity, and the
deployment of applications in the cloud. And partially it is due to
our conservative approach in trying to get things "right" in view of
limited industry experience in the cloud area when we started this work.
Because of this, we believe that providing solid support for
standardized PaaS-based programming and multi-tenancy would delay the
release of Java EE 7 until the spring of 2014 — that is, two years
from now and over a year behind schedule. In our opinion, that is way
too long.

We have therefore proposed to the Java EE 7 Expert Group that we
adjust our course of action — namely, stick to our current target
release dates, and defer the remaining aspects of our agenda for PaaS
enablement and multi-tenancy support to Java EE 8.

Of course, we continue to believe that Java EE is well-suited for use
in the cloud, although such use might not be quite ready for full
standardization. Even today, without Java EE 7, Java EE vendors such
as Oracle, Red Hat, IBM, and CloudBees have begun to offer the ability
to run Java EE applications in the cloud.

Deferring the remaining cloud-oriented aspects of our agenda has
several important advantages:


  • It allows Java EE Platform vendors to gain more experience with
    their implementations in this area and thus helps us avoid risks
    entailed by trying to standardize prematurely in an emerging area.

  • It means that the community won't need to wait longer for those
    features that are ready at the cost of those features that need
    more time.

  • Because we have already laid some of the infrastructure for cloud
    support in Java EE 7, including resource definition metadata,
    improved security configuration, JPA schema generation, etc., it
    will allow us to expedite a Java EE 8 release. We therefore plan
    to target the Java EE 8 Platform release for the spring of 2015.

This shift in the scope of Java EE 7 allows us to better retain our
focus on enhancements in simplification and usability and to deliver
on schedule those features that have been most requested by
developers. These include the support for HTML 5 in the form of Web
Sockets and JSON-P; the simplified JMS 2.0 APIs; improved Managed Bean
alignment, including transactional interceptors; the JAX-RS 2.0 client
API; support for method-level validation; a much more comprehensive
expression language; and more.

We feel strongly that this is the right thing to do, and we hope that
you will support us in this proposed direction.

Join the discussion

Comments ( 13 )
  • Adriaaaaan Friday, August 31, 2012

    Sounds like a good idea to me. I'm very happy with Jee6 and it seems like the most of what I;m interested in is the minor enhancements jaxrs2 jms2 etc have me most excited anyway. Is there going to be a list of whats being dropped?


  • guest Friday, August 31, 2012

    It scares me to think that for the last 3 years majority of the time was spent on something that will not come to fruition until java ee 8. The value add for java ee 7 is extremely low. When I see our competitors like Microsoft release ever three years with lots of features and tooling support I start to wonder if the design by committee thing is really working out. Please elaborate on the "more" part, what I have seen on blogs and what you have presented here for ee 7 is just not enough.

    Also, please put the "MVC" controller support back into the java ee 7 release (jax-rs 2.0 dropped it).


  • Linda DeMichiel Friday, August 31, 2012

    Thanks for the feedback! I expect that what will be dropped from the current specs under the Java EE 7 umbrella will be fairly small, and that most of the changes you will see will be to the Platform spec. I have done a preliminary evaluation of these, and I expect them also to be relatively constrained. As I tried to say in my message, a lot of what we have done so far is applicable to non-cloud environments as well. Changes to the platform spec will be listed in the "history" section of that spec.


  • Tang Yong Saturday, September 1, 2012

    The article also explained why on current glassfish trunk, cloud related modules are in inactive status. Indeed, because of a lack of maturity in the space for provisioning, multi-tenancy, elasticity, and the deployment of applications in the cloud, I also think that putting PaaS related features on JavaEE 7 is not suitable, and it must be justified and feedbacked for more time by more vendors.

    Thanks for updating javaee7 roadmap in time!


  • java4life Saturday, September 1, 2012

    What is the new theme ? There is 2 years worth of articles, presentations, and marketing around Java EE 7 "going to the cloud".


  • Gerald Loeffler Sunday, September 2, 2012

    In my opinion, standardised resource definitions and DB schema generation would go a long way in making Java EE deployments portable across PaaS providers (assuming their support for these features, of course). So although a comparatively small step along the standardisation of "Java EE in the cloud", it nevertheless addresses a real pain point and is therefore very welcome - and much better to have it in 2013 than in 2014!


  • guest Sunday, September 2, 2012

    Why are you developing a new HTTP client in JAX-RS 2.0 when there will be a new and improved one in JDK 8 ? Could we not use this time to do other important stuff ? Moreover, java se 8 will be out before most vendors implement the EE 7 specification; I suspect people will become accustom to using the new http client provided with java se 8.

    http://openjdk.java.net/jeps/110


  • Richard Opalka Thursday, September 6, 2012
  • guest Sunday, September 9, 2012

    We are learning that Oracle and Redhat (both big players in JavaEE world) along with CloudBees one of the leader in JavaEE PaaS are submitting a PaaS spec to OASIS along with other cloud players. Any chance to reconsider the delaying of PaaS feature and base the work on the submitted SPEC? http://www.cloudspecs.org/


  • guest Thursday, September 13, 2012

    What I understood is, you hold up Java EE 7 for the cloud based aspects which are yet not mature and are planned to be incorporated in Java EE8. I think Java and Glassfish has lost the edge of being early leaders in breakthrough technologies. SOA and JBI are mercilessly cut out which were a very strong point of glassfish. We user are now on mercy of Oracle. Community will loose its relevance for the extraordinary delay and submission to Oracle. It has been a long wait. We expect a better JPA, REST, and JSON now.


  • guest Thursday, September 20, 2012

    Hi, I am a computer programmer who uses Java EE in a real-world company.

    #1 How about you guys actually publish "The Java EE 6 Tutorial: Advanced Topics" book? You know, before Java EE 7 comes out?

    #2 When the Java EE 7 SDK comes out and application servers start supporting it, how about you publish the Java EE 7 Tutorial book at that time, instead of 2 years later?

    Thank you from an actual programmer who uses this technology. If you want to sell copies of WebLogic, you really should make the printed documentation available at the same time as the software is released. If you keep the Java EE SDK free, then we will be more likely to want to use copies of WebLogic in production environments.


  • guest Monday, October 1, 2012

    re: the JAX-RS Client API and Java SE 8's new HTTP API

    The simple answer is that one is a low-level API provided by the JDK, and the other is a high-level API specifically for accessing JAX-RS REST resources. While there's nothing preventing you from just using the low-level Java SE network APIs currently, the JAX-RS 2.0 Client API is much simpler and more directly addresses the issues involved with accessing REST resources by a client.

    I would expect JAX-RS implementations to transition their code to Java SE's new HTTP client API when Java EE 8 comes out (as Java EE 8 will then support Java SE 8). Regardless, that's an implementation detail and not relevant to the standardized Client API coming out with Java EE 7.


  • Kausik Wednesday, October 10, 2012

    Good topic


Please enter your name.Please provide a valid email address.Please enter a comment.CAPTCHA challenge response provided was incorrect. Please try again.Captcha