Thursday Mar 13, 2014

Participate in the Future of Java

"The best way to predict the future is to invent it." (Alan Kay)

Sometime, some people tends to overlook a critical element of the Java ecosystem, i.e. the Java Community Process. The JCP is the mechanism for developing standard technical specifications for Java technology. The JCP is clearly one of the key pillar of the whole Java ecosystem.

Heather VanCura who manages the JCP Program Office has recently done a presentation at the Israel JUG. Heather's slide deck (see here) is really a useful ressource as it answers a lot of JCP related questions, it's almost a "FAQ on slides".

In her slides, Heather addresses questions such as :

  • What is the Executive Committee? How it operates?
  • The different levels of participation
  • The different roles within the JCP
  • The different deliverables of an Expert Group
  • What has the JCP done to be as open as possible?
  • How the JCP is evolving ("JCP.next")?
  • ...

And more importantly, it also explain why you should get involved in the JCP. Being involved in the JCP, at any level, allows anyone to define the future of Java!

Monday Dec 09, 2013

We need your help! Java EE 8 Survey - Part 1

As we start to plan for the next revision of the Java EE Platform (Java EE 8), we would like to get input from the community on the relative importance of some of the features that we might add.

Please participate in the Java EE 8 features survey to let your voice be heard and help us prepare the future of Java EE, it shouldn't take you more than a few minutes! 

This is the first part of a two-part survey. We'll be announcing part 2 in the beginning of the new year. So again, if you want to help shaping the future of Java EE, please participate in the survey.

Thursday Oct 17, 2013

How You Helped Shape Java EE 7...

For many of us working with the JCP for years, the commitment to transparency and openness is very clear. For others, perhaps the most visible sign to date of this high regard for grassroots level input is a survey on Java EE 7 gathered a few months ago. The survey was designed to get open feedback on a number of critical issues central to the Java EE 7 umbrella specification including what APIs to include in the standard. The survey was highly successful with a large number of high quality responses.

With Java EE 7 under our belt and the horizons for Java EE 8 emerging, this is a good time to thank everyone that took the survey once again for their thoughts and let you know what the impact of your voice actually was. I've posted the details on my personal blog. I hope you are encouraged by how your input to the survey helped shape Java EE 7 and continues to shape Java EE 8. Maybe now is the time for you to get more involved :-)?

Wednesday Oct 09, 2013

Using NoSQL with EclipseLink and JPA?

NoSQL is obviously a hot topic in the enterprise these days, at least at the water cooler if not in the production data center. The momentum is such that despite being seen as a stalwart of relational databases, Oracle too has entered the NoSQL ecosystem with Oracle NoSQL. Naturally, the question of how to use NoSQL databases in Java EE applications (specifically existing Java EE 5 and Java EE 6 applications) comes up all too often. As it so turns out there are a number of very interesting initiatives out there to radically simplify the usage of NoSQL databases in Java EE applications by creating JPA based facades over them (strictly speaking, JPA as it stands today is not intended to support NoSQL from a purely standards standpoint). Such efforts include one from non other than the team behind the Oracle JPA reference implementation EclipseLink. In a code driven blog post, Huseyin Akdogan demonstrates how to use MongoDB using EclipseLink NoSQL. You are also welcome to check out my own slide deck covering using NoSQL databases in Java EE with or without a JPA flavored API (using just plain CDI):

Interestingly, NoSQL support featured quite prominently in the results of a survey around JCP standards put together by the London Java Community (LJC). It would be interesting to hear your thoughts as well.

Robert Greene, John Bracken and Shaun Smith held both a technical session titled "Building Oracle NoSQL Database Applications with EclipseLink" and a BOF titled "Java Persistence for NoSQL" at JavaOne 2013 on this topic. Stay tuned to Parleys.com for the video recordings of the sessions.

Wednesday Jun 12, 2013

Fifteen JavaEE 7 APIs Featured in the Java Spotlight Podcast

JavaEE 7 has been officially released and the Java Spotlight Podcast has been supporting this major release by featuring almost every API change, both major and minor, for the last 11 months. There are fifteen Java Spotlight Podcast feature interviews with the JCP specification leads from Oracle, Red Hat, and IBM in a relaxed question and answer format.

[Read More]

Monday May 13, 2013

Congratulations JCP Star Specification Leads!

Please join me in congratulating the 2012 JCP star specification leads Pete Muir of Red Hat (lead for CDI 1.1), Santiago Pericas-Geertsen of Oracle (co lead for JAX-RS 2) and Marek Potociar of Oracle (co lead for JAX-RS 2). Leading a non-trivial group of often opinionated, very intelligent people to achieve meaningful consensus codified into a long-lasting standard is an enormously hard task. Doing that successfully and gracefully takes a special kind of individual. The star specification lead program is a very open way of giving some measure of recognition to such efforts.

You can find out a bit more about the program and this year's winners on the JCP site.

Friday Mar 08, 2013

Java EE Transparent Enough?

Grassroots level community participation is key to the success of any open standard - Java EE is certainly no exception. Realizing this fact, Oracle (and Sun before it) has done quite a bit to improve transparency through the ongoing process of JCP reform. The improvements are pretty clear to those of us working with the JCP for a number of years, especially as independents. The changes are not necessarily obvious to folks new or unfamiliar with the JCP however. In fact, many still seem to hold some pretty dubious views on the JCP.

My colleague Arun Gupta recently wrote a very insightful blog on this topic titled Transparency and Community Participation in Java EE 7. It's definitely a worthwhile read and a great place to start if you are curious about the JCP or are interested in participating yourself. In the blog entry, Arun discusses some of the crucial changes in JCP 2.8, how Java EE 7 JSRs have met and exceeded the transparency requirements, including some hard data on improved community participation as well as the outstanding continued success of initiatives like Adopt-a-JSR via JUGs worldwide.

Friday Feb 22, 2013

Java EE 7 Schema Namespace Moving to jcp.org

The schema namespace for Java EE 7 APIs are moving from java.sun.com to now perhaps a more fitting xmlns.jcp.org. You are encouraged to take a look at the latest Java EE 7 draft schemas at: http://xmlns.jcp.org/xml/ns/javaee/index.html (it is still a work in progress since as you know, Java EE 7 has not been finalized yet). Some of the updated schemas include:

  • application_7.xsd
  • application-client_7.xsd
  • connector_1_7.xsd
  • ejb-jar_3_2.xsd
  • javaee_7.xsd
  • jsp_2_3.xsd
  • javaee_web_services_1_4.xsd
  • javaee_web_services_client_1_4.xsd
  • web-app_3_1.xsd
  • web-common_3_1.xsd
  • web-fragment_3_1.xsd
  • web-facelettaglibrary_2_2.xsd
  • web-facesconfig_2_2.xsd

Independent consultant, ardent Java EE advocate and long-time JCP expert Antonio Goncalves had this to say about the change - "technically changing a namespace is not difficult, so this is not a major Java EE 7 technical update. But it's a symbol. For many years we were wondering what would happen to java.sun.com namespaces. Most of us thought it would be renamed to java.oracle.com. But no, it went back to where it originally belonged, to the JCP. Lately the JCP has moved towards greater transparency (i.e. JCP.next) and having the JCP namespaces strenghens this move."

Note, not all API namespaces will be updated right away since some APIs are not changing in Java EE 7. For example, JAX-WS will likely not be updated. All the older namespaces will continue to be maintained for backwards compatibility.

Now is the time to share your views. Here is the relevant EG discussion: http://java.net/projects/javaee-spec/lists/jsr342-experts/archive/2013-02/message/36.

Friday Feb 08, 2013

Adopt-a-JSR Follow-up Online Meeting

As you might be aware, the Adopt-a-JSR program was started by the London Java Community and SouJava to encourage more grassroots level participation in the JCP. The idea is for developers to closely engage with a JSR they are interested in through their own JUG. On January 18th there was a pretty sucessful initial online call explaining the details of the program. There were over 40 JUG leaders/members on the call from around the world.

The folks behind the Adopt-a-JSR program are now hosting a follow-up online meetup on February 27th. Anyone can join the meetup to learn about the current JUG Adopt-a-JSR use cases, new developments and provide feedback. Martijn Verberg from the LJC, Bruno Souza from SouJava, Arun Gupta from the Java EE/GlassFish team and Heather VanCura from the JCP program office will be leading the meetup.

Here are the details for the WebEx:

Location: http://jcp.webex.com
Topic: Adopt-a-JSR
Date: Wednesday, February 27th
Time: 9:00 AM, Pacific Standard Time (San Francisco, GMT-08:00)
WebExMeeting Number: 809 004 757
WebExMeeting Password: 23678

Here are the audio conference details:

Call: +1 (866) 682-4770 (US, toll free) or +1 (408) 774-4073 (US, local)
Conference code: 945-4597
Security code: 23678 ("adopt" on your phone handset)
* For global access numbers see https://www.intercallonline.com/listNumbersByCode.action?confCode=9454597

Hope to see you there!

If you happen to miss it, no worries - recordings of the meetup and associated materials will be posted on the JCP multimedia page again (check out the slide deck and recording from the January 18th meetup).

Tuesday Jan 29, 2013

Adopt-a-JSR Online Meeting A Success

As you may be aware, the Adopt-a-JSR online meeting was held on January 18. The meeting was led by Bruno Souza from SouJava, Martijn Verberg from the London Java Community, Arun Gupta from the GlassFish/Java EE team and Heather VanCura from the JCP. Heather opened the call with an overview & introductions, Martijn and Bruno shared the program details and encouraged JUG members to get more involved in adopting JSRs and Arun provided an update on the Java EE 7 JSRs being adopted, along with some very exciting use cases from JUG Chennai and BeJUG.

The meeting was a success with 40 Java User Group participants from all over the world. There will be a follow up meeting scheduled at the end of February, so stay tuned.

The recording and slides from the meeting are available on the JCP.org Multimedia page.

Thursday Jan 24, 2013

Java Batch in Proposed Final Draft

Java EE 7 marches on forward!

Congratulations to the Java Batch spec lead Chris Vignola of IBM and the Java Batch EG! Java Batch (more specifically "Batch Applications for the Java Platform" or JSR 352) was the very first Java EE 7 JSR to reach the Proposed Final Draft stage. We expect more Java EE 7 JSRs to follow suit shortly.

The draft is available for download on the JCP page for Java Batch. We encourage you to read the draft and provide your feedback (this is one of the last chances you will have to do so before the spec is finalized).

Monday Jan 14, 2013

Java EE 7 in Public Review!

Java EE 7 has turned the last lap and is racing towards the finish line! The Java EE 7 JSR itself (JSR 342) very recently published it's official Public Review Draft. The review closes on February 11th so act fast, read the draft spec and send your feedback. The draft is available here. After the review is over, the JSR will go to the EC ballot.

And Java EE 7 is not the only one. As this JSR update from the JCP indicates, the review periods for JMS 2, Java EE Concurrency, WebSocket, JPA 2.1 and JSON-P are still open but will be coming to an end rapidly in the next few weeks.

Wednesday Dec 12, 2012

Adopt a Java EE 7 JSR!

Broad community participation is key to the success of any technology worth it's salt. The Adopt-a-JSR program was launched in recognition of this fact. It is an initiative by some key JUG leaders around the World to encourage JUG members to get involved in a JSR and to evangelize that JSR to their JUG and the wider Java community, in order to increase grass roots participation. There are a number of JUGs that have already jumped in like the Chennai JUG, SouJava, London Java Community, BeJUG, GoJava, Morrocco JUG, Campinas JUG and ItpJava. Note that any developer can participate, there isn't a need to be a JUG leader.

There are a number of Java EE 7 JSRs that could use your help right now including WebSocket, JSON, Caching, Concurrency for EE, JAX-RS2 and JMS2. Find out more here.

Monday Nov 19, 2012

CDI 1.1 Public Review and Feedback

CDI 1.1 is humming along nicely and recently released it's public review draft. Although it's just a point release, CDI 1.1 actually has a lot in it. Some the changes include:

  • The CDI class, which provides programmatic access to CDI facilities from outside a managed bean
  • Ability to veto beans declaratively using @Vetoed
  • Conversations in Servlet requests
  • Application lifecycle events in Java EE
  • Injection of Bean metadata into bean instances
  • Programmatic access to a container provided Producer, InjectionTarget, AnnotatedType
  • Ability to override attributes of a Bean via BeanAttributes
  • Ability to process modules via ProcessModule
  • Ability to wrap the InjectionPoint
  • Honor WEB-INF/classes/META-INF/beans.xml to activate WEB-INF/classes in a bean archive
  • Global ordering and enablement of interceptors and decorators
  • Global selection of alternatives
  • @New deprecated
  • Clarify interceptors and decorators must be implemented using proxying
  • Allow multiple annotated types per Java class
  • Allow Extensions to specify the annotations that they are interested in

The CDI 1.1 expert group has a number of open issues that they would like immediate feedback on. These include critical issues like bean visibility, startup events and restricting CDI scans. Read the details here and let your voice be heard!

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!