Monday Jul 08, 2013

JCache Marches Onward!

As many of you know, JCache (JSR 107) narrowly missed Java EE 7. JCache is clearly a very important and long-anticipated API as indicated in the well-participated Java EE 7 survey. I am happy to report that JCache keeps making steady progress and recently posted a public review.

The review is open until August 5th and you are encouraged to get your comments in. You can send your comments directly to jsr107@googlegroups.com or enter issues on GitHub.

At the current pace, JCache should be ready well ahead of Java EE 8 and be an excellent candidate for inclusion. You should also be able to use JCache with Java EE 7 and Java EE 6 as a drop-in jar.

Thursday Jan 31, 2013

JCache to Miss Java EE 7

We are very sad to report that JCache (JSR 107) missed a few critical deadlines and will not make it in time for Java EE 7. This is undoubtedly dissapointing to many of you as the community indicated strong support for JCache in the well-participated Java EE 7 survey. However, the consensus on both the Java EE 7 and JCache EGs was that it is best to not hold up Java EE 7 any further (as you know Java EE 7 has a ton of other great stuff including WebSocket, JMS 2, JAX-RS 2, JSON-P, Java Batch, EE Concurrency and the like - check out my Java EE 7 slide deck from a few months ago).

JCache is fully expected to move forward strongly independent of Java EE 7 and be an excellent candidate for Java EE 8. You should also be able to use JCache with Java EE 7 as a drop-in API provided the spec is finalized far ahead of Java EE 8. We encourage you to follow the Java EE 7 EG and JCache EG discussions on the topic and provide your feedback.

Tuesday Nov 20, 2012

Concurrency Utilities for Java EE (JSR 236) in Early Draft Review!

A concurrency API for Java EE has been long awaited by the community. In fact, JSR 236 -- Concurrency Utilities for Java EE was started in 2003. The great news is that JSR 236 has been making serious headway just in time for Java EE 7! JSR 236 released it's Early Draft Review just a few days ago. You can read it and provide your feedback here as well as get involved.

Wednesday Jun 13, 2012

JSR 348, 355, and 358: Moving JCP Forward

The three-step JCP evolution consists of the following JSRs:

JSR 348, JCP transparency
JSR 355, Merging the two existing Executive Committees
JSR 358, complex issues moved postponed from JSR 348

ALT_DESCR

The JSR 348 is already completed and JSR 355 is scheduled to be complete later this year. JSR 358 was recently filed and plans to revise several items such as modify the JSPA, Process Document, and a large number of complex issues. Because of the nature and scope of work, the Expert Group consists of representatives from all companies in the Executive Committee.

Following the process set by JSR 348, all the work is done in open at jsr358.java.net. All the email discussions are here and JIRA here.

Read Patrick Curran's blog for more details as well.

The JSR review ballot ends on Jul 9th however the work has already happening for the past few months. Now is your chance to contribute and make JCP more effective!

Wednesday Feb 08, 2012

Yet another Java EE 7 spec - WebSocket is JSR 356!

JSR 356 has been filed by Oracle : "Java API for WebSocket". The spec lead is Danny Coward and this JSR is scheduled for inclusion in Java EE 7

While it's great to have both server and client support for WebSocket in Grizzly and GlassFish, it's probably even better to have a standard to encourage portable code. The Review Ballot is scheduled to start on 21 Feb, 2012.

ALT_DESCR

With this JSR, I believe the list for Java EE 7 is now complete. You can get the full list in the latest issue of the Java Magazine and catch recent posts using the javaee7 tag.

Wednesday Dec 07, 2011

Lesser-advertised Java EE.next JSRs

As you may have already read here, Java EE 7 (JSR 342) is well on its way with some JSRs having reached the early draft status (e.g. JAX-RS 2.0, JSF 2.2, CDI 1.1, ...).

ALT_DESCR

On the other hand, you may not have heard of the following JSRs that are all candidates for inclusion in the Java EE Platform:
State Management (JSR 350) was recently filed by Oracle to offer a standard API for a state management subsystem (examples of state include HTTPSession and any state associated with CDI scoping annotations).
Batch (JSR 352) was covered here just recently as it has recently passed the Review Ballot.
Concurrency Utilities for Java EE (JSR 236) is building on JSR-166 (java.util.concurrency) to provide a clean abstraction for threaded code in a managed environment. It has been ongoing for several years and should be revived and completed in time for Java EE 7.
Java API for JSON Processing (JSR 353) is a parsing API for manipulating (reading or writing) JSON content. Binding (JAXB-style) is not in the scope of this newly submitted JSR.

The exact list of JSRs that will be part of Java EE 7 is up to the expert group to decide. Arun has more details on the status of each JSR.

Friday Jul 15, 2011

BeanValidation 1.1 is now JSR 349

JBoss' Emmanuel Bernard has submitted Bean Validation 1.1 as JSR 349. This version should be part of Java EE 7 and an important goal for this release is further integration with other platform JSRs.

http://blogs.sun.com/theaquarium/resource/JCPboxes.png

In addition to JSF and JPA, integrations with JAX-RS, JAXB, CDI and EJB are also considered. Other important evolutions include a potential API to validate parameters and return values of method calls as well as another API to declare constraints (as opposed to annotations today). The JSR page and this earlier blog post have more details.

Note that the current Bean Validation API can also very much be used with JavaSE. Ballot results for this JSR are due on July 25th, 2011.

Tuesday Jun 07, 2011

Java 7 passes the Public Review Ballot

Java 7 has just passed the Public Review Ballot with the following results :
• 13 YES votes
• 1 NO vote (Google)
• 1 Abstain
• 1 non-vote

ALT_DESCR

Details and comments are available from this JCP page. Next steps: Final Draft, Final Approval Ballot and Launch (July).

You may be interested in this recent post by the LJC (London Java Community, a recently elected member to the Executive Committee) on how the JCP works and how it should evolve.

Monday May 23, 2011

Evolving the JMS specification, an opportunity and a challenge

A few days ago, Masoud Kalali, now a JSR 343 (JMS 2.0) expert group member on Nigel's suggestion, posted a brief overview of JSR 343 and what he believes are important use-cases to address.

ALT_DESCR

The JMS specification hasn't evolved in a while but it has also served very well its numerous users for all that time. So this post is an interesting read on why we even need JMS 2.0, in addition to the Ease-of-Development love (annotations, CoC, ...) that it probably deserves.

Masoud promises to cover more JMS in future posts so make sure to keep an eye on his blog.

Tuesday May 17, 2011

JCP.next and JSR 348

It's been a long time coming but we're finally starting to see JCP.next shaping up. This Oracle press release announces JSR 348, the first of two JSRs to improve the Java Community Process itself (yes, there are JSRs for that too).

JCP.next

The detailled proposal for this JSR has enhancements grouped into four categories : Transparency, Participation, Agility, and Governance. A second JSR is planned to revise the current JSPA.

As with any JSR, a ballot has started with both the ME and SE/EE executive committees (now complete) voting before it closes on May 30th.

Friday Apr 29, 2011

Java EE 7 - what about caching?

JCache (JSR 107, Java Temporary Caching API) has been incomplete and dormant for a while. With JavaEE 7 picking up steam and addressing cloud scenarios such as PaaS, the co spec leads (EHCache's Greg Luck and Oracle's Cameron Purdy) have agreed to do get back to work and complete JCache to provide Java EE with a general purpose caching API. You can find an evolving draft version of the specification and get a good level of details about what's going on on this recent post by Greg.

ALT_DESCR

Fast-forward 240 JSRs and we now have JSR 347: Data Grids for the Java Platform, submitted by JBoss and with a goal to "build upon and extend JSR-107 (JCACHE) API" to adress use-cases such as distributed caching (2nd level caching for JPA for instance) or transient session state (ActiveCache for GlassFish would be a good example of that) and provide standard means of distributing and replicating data. More background on Manik's blog.

Voting by the JCP Executive Committee on JSR 347 is now going on with results due on May 9th. The proposed schedule for this JSR targets an Early Draft of the specification by December 2011 and a Final Release by September 2012 (in time for Java EE 7).

Tuesday Apr 26, 2011

More Java EE 7 progress - CDI 1.1 can start

Following last week's results of the EJB 3.2 JSR Review Ballot we now have another result: CDI 1.1 has been accepted by the JCP Executive Committee with 10 YES votes and 1 non-vote (VMWare).

CDI work in progress

This previous post has some context on the goals of CDI 1.1 and links to relevant URLs. You'll note that IBM has casted a YES vote with an interesting technical comment on what they feel should be in Java EE vs. CDI and on more clarification vs. JSR 330 (or its successor). Details are on the voting result page.

You can also read this short post from the Pete Muir, the CDI 1.1 specification lead.

Tuesday Mar 29, 2011

JMS 2.0 - Time to get involved!

Nigel Deakin has been in touch with an update on the progress of Java Message Service (JMS) 2.0, which as JSR 343 is one of several new JSRs that will form part of Java EE 7. Nigel's first task as spec lead is to set up the expert group, so he would like to invite experienced and active practitioners in JMS, who can allocate enough time to contribute to this specification, to apply to join the expert group. Since JMS is a mature technology he's particularly keen to make sure that all the principal JMS 1.1 implementations are represented.

Nigel

Nigel also tells me that he's keen that JMS 2.0 be developed as transparently as possible. There'll be a public email list that interested observers can use to contribute and discuss ideas. The expert group discussions will also be made public as much as possible. There'll also be a JIRA issue tracker which anyone can use to submit proposals. To find out how to get involved, visit the new JMS 2.0 website: jms-spec.java.net.

Monday Mar 14, 2011

Java EE 7 review ballot results - Go!

The votes for the proposed Java EE 7 JSR are in and it's a full house of YES (13 out of 13). In fact, all others submitted JSRs come out with the same flying colors: Expression Language 3.0, Servlet 3.1, JMS 2.0, and JSF 2.2.

ALT DESCR

The specification leads should now form the expert groups (if you are interested, check out the "I would like to join this Expert Group" link on each JSR page). Other expected JSRs include EJB, BeanValidation, CDI (in fact this just came in), and the "JSON API" which would account for a total of 12 13 JSRs (13 seems like the lucky number of the day). This includes JCache and Concurrency Utilities for Java EE and the recently approved JAX-RS 2.0 and JPA 2.1 JSRs. There could be more and history has shown that things can change (for the better).

Check this earlier post on the context and scope of the umbrella Java EE 7 JSR. While the cloud is an important theme, there is much more in this release!

Sunday Mar 06, 2011

Java EE 7 - because the platform is greater than the sum of its parts

With Java EE 7 currently in the ballot alongside with some of its constituting JSRs (and others already on their way), it's now time for some non-Oracle-lead JSRs to start their work and BeanValidation 1.0 spec lead Emmanuel Bernard has an idea or two on what the expert group should focus on for the next release.

In fact, the list of features is quite precise starting with "Integration with other specs". This will go beyond the JPA and JSF integration done as part of BeanValidation 1.0 and extend the scope to JAX-RS parameters, JAXB, CDI, and more JPA, taking the idea of specifications designed to work together (a recent theme introduced in Java EE 6) yet one step further. Emmanuel's post already has a nice set of comments and further feedback can be shared on the Bean Validation forum.

Some more JSRs we should soon hear from : JSR-107 (JCache), CDI.next and maybe others.
Java EE 7, if it passes the current ballot, is currently scheduled to deliver in the second half of 2012.