Tuesday Jul 16, 2013

What's New in JMS 2 - Part 2

JMS 2 is one of the most significant parts of Java EE 7. Clearly, the principal goal of JMS 2 is to streamline and modernize the API by adopting programming paradigms like higher level abstractions, dependency injection, annotations, runtime exceptions, the builder pattern and intelligent defaults. However, a limited number of important new features were also added to JMS 2. In a recent OTN article, JMS 2 specification lead Nigel Deakin covers the new features such as shared subscriptions, delivery delays, asynchronous sends and delivery counts in detail. The article is the second of a two part series on JMS 2. For more visual folks, there is also Nigel's brief 15 minute video on JMS 2 on the YouTube GlassFish videos channel as well as is my JMS 2 slide deck below:

You can also check out the official specification yourself or try things out with the newly released Java EE 7 SDK.

Wednesday Jul 10, 2013

An Overview of JAX-RS 2

JAX-RS 2 is one of the most significant parts of the Java EE 7 release. In a brief InfoQ article, Vikram Gupta overviews the major changes in JAX-RS 2. There's also the 20-minute JAX-RS 2 presentation by specification lead Santiago Pericas-Geertsen on the GlassFish videos YouTube channel and my own slide deck below:

You can also check out the official specification yourself or try things out with the newly released Java EE 7 SDK.

Wednesday Jun 26, 2013

What's New in JMS 2 - Part 1

JMS 2 is one of the most significant parts of Java EE 7. One of the principal goals of the JMS 2 API is improving developer productivity by reducing the amount of code to work with JMS by adopting programming paradigms like higher level abstractions, dependency injection, annotations, runtime exceptions, the builder pattern and intelligent defaults. In a recent OTN article, JMS 2 specification lead Nigel Deakin covers the ease-of-use changes in detail. The article is the first of a two part series on JMS 2. For more visual folks, there is my JMS 2 slide deck:

You can also check out the official specification yourself or try things out with the newly released Java EE 7 SDK.

Tuesday May 28, 2013

Nigel Deakin on JMS 2

The 131st episode of the Java Spotlight podcast features an interview with JMS 2 specification lead Nigel Deakin. JMS 2 is one of the key parts of the Java EE 7 platform and a long awaited update to the very popular API. Nigel talks with Roger Brinkley about the motivation for the JSR, the simplified API, the new features, MDB alignment, portable JMS resource definitions in Java EE 7, current status of the JSR as well as what's in the future.

You can listen to the full podcast here. It's really a great starting point for learning about JMS 2. You can certainly give the official specification a read yourself (the API recently had it's final release). At a hundred and fifty some pages, it is not too bad of a read and Nigel does a great job of summarizing the changes towards the beginning of the document in the section titled What is new in JMS 2.0?. You can also try the API out with a GlassFish promoted build.

Thursday May 16, 2013

10 Ways JMS 2 == Less Code

JMS 2 is one of the most significant parts of Java EE 7. One of the principal goals of the JMS 2 API is improving developer productivity by reducing the amount of code to work with JMS by adopting programming paradigms like higher level abstractions, dependency injection, annotations, runtime exceptions, the builder pattern and intelligent defaults. In a brief write-up JMS 2 specification lead Nigel Deakin highlights these changes by demonstrating ten concrete ways the JMS 2 API means less code as compared with JMS 1.1.

JMS 2 recently passed it's final approval ballot. You could check out the proposed final draft yourself. At 150 some pages, it is a pretty digestible specification. You can also try the API out with a GlassFish promoted build.

Friday May 10, 2013

Java EE@JavaOne Russia 2013

JavaOne Russia 2013 was held at the Crocus Expo Center in Moscow on April 23-24. The conference was a resounding success with a great vibe, excellent technical content and numerous world class speakers. Some notable speakers included Werner Keil, Joonas Lehtinen, Heather VanCura, Paul Bakker, Bert Ertman, Talip Ozturk, Anil Gaur, Geertjan Wielenga, Arun Gupta, Jim Weaver, Stephen Chin and David Delabassee. Topics covered included the JCP/JUGs, Java SE 8, Java EE 7, HTML 5/WebSocket, JSF, JMS 2, JAX-RS 2, Java EE Concurrency, JBatch, JSON-P, NetBeans, MySQL, Vaadin, the Oracle Java Cloud, OpenShift, OSGi, JavaFX and Coherence.

 

 

I delivered the Java EE technical keynote, two technical sessions (one on JSM 2 and the other on JAX-RS 2) and three lighting talks (on Java EE Concurrency, JBatch and JSON-P). I also helped deliver two hands-on-labs (on Java EE 7 and the Java Cloud Service). More details on the sessions and JavaOne Russia 2013, including the slide decks and code, posted on my personal blog.

Wednesday May 08, 2013

Santiago Pericas-Geertsen on JAX-RS 2

The 130th episode of the Java Spotlight podcast features an interview with JAX-RS 2 co-spec lead Santiago Pericas-Geertsen. JAX-RS 2 is one of the key parts of the Java EE 7 platform and a vital update to the very popular API. Santiago talks with Roger Brinkley about the motivation for the JSR, some of the API details such as the client API, asynchronous processing, interceptors/filters, Hypermedia support and content negotiation, current status of the JSR as well as what's in the future.

You can listen to the full podcast here. It's really a great starting point for learning about JAX-RS 2. You can certainly give the proposed final draft a read yourself (the API recently passed it's final approval ballot). At ninety some pages, it is not too bad of a read. You can also try the API out with a GlassFish promoted build.

Tuesday Apr 09, 2013

JMS 2, Bean Validation 1.1, JBatch, JSON-P Go Final!

Java EE 7 is almost to the finish line! The first slew of Java EE 7 JSRs have successfully passed their Final Approval Ballots and are now final. JMS 2 (JSR 343), Bean Validation 1.1 (JSR 349), JBatch (JSR 352), and JSON-P (JSR 353) all passed with near unanimous support from the JCP Executive Committee. Please join me in congratulating spec leads Nigel Deakin of Oracle, Emmanuel Bernard of Red Hat, Chris Vignola of IBM, and Jitendra Kotamraju of Oracle on the fruition of all their hard, often thankless work.

We expect more Java EE 7 JSRs to follow suit shortly, so stay tuned. This is a great time to read the final specs and start experimenting with them in the GlassFish 4 builds.

Friday Apr 05, 2013

An Overview of JAX-RS 2

JAX-RS 2 is one of the most significant parts of the upcoming Java EE 7 release. In a brief article, consultant, German author and celebrated Java EE advocate Adam Bien does a great job of overviewing the major changes in JAX-RS 2. He talks about asynchronous processing, EJB/CDI integration, filters/interceptors, the configuration API, the client API and more.

If the article whets your appetite to learn more about JAX-RS 2, you could download the actual proposed final draft and give it a read. For those unaware, JAX-RS 2 recently passed its public review ballot. At just above 90 pages, the actual JAX-RS 2 specification document is not that bad of a read.

Wednesday Mar 20, 2013

A Gentle Introduction to JMS 2

My well-respected colleague and good friend Arun Gupta continues his admirable effort to provide some very early coverage of Java EE 7 features. I thought I'd highlight his blog entry on the core of the JMS 2 API written in this vein.

The primary goal of JMS 2 is to modernize the extremely widely used but very dated JMS API. The core of these changes is the aptly named simplified API founded upon injectable JMS contexts. The JMS context essentially represents the JMS API reimagined (without any feature loss) using up-to-date API design constructs like dependency injection, automatic life-cycle management, annotations, the builder pattern, unchecked exceptions and intelligent defaults.

In his blog entry, Arun does a good job of explaining the basic concepts of the JMS context. He explains through downloadable code examples sending and receiving messages in the brave new world of JMS 2. He also shows the very powerful capability of defining JMS resources inside your application through annotations. The blog entry is a great starting point for beginning to explore the changes in JMS 2.

Friday Mar 15, 2013

AutoCloseable JMS 2 Resources

As the Java EE 7 release date draws closer, blogs and articles covering the new features are beginning to roll in. In a brief blog entry, John Ament, a key independent member of the JMS 2 expert group talks about AutoCloseable JMS 2 Resources. This feature takes advantage of Java SE 7 try-with-resources to significantly simplify the cleanup of JMS resources such as connections, sessions, message consumers and message producers. This is particularly important in non-Java EE environments where you are not using the new JMSContext API via @Inject. The blog entry includes downloadable JMS 2 code samples. John expects to write many more blog entries covering JMS 2, so stay tuned.

For those unaware, JMS 2 is now in the proposed final draft stage. Feel free to download the draft and take a look at it yourself. There is a very handly What is new in JMS 2.0? section towards the beginning of the document.

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.

Friday Jan 11, 2013

Ed Burns on JSF 2.2!

The 115th episode of the Java Spotlight podcast features an interview with celebrated JSF spec lead Ed Burns. Ed talks with Roger Brinkley about the history of JSF, it's value proposition, the changes in JSF 2.2 and the future. Ed provides his insight into features like the workflow API, HTML 5 support and multi-templates.

The podcast also covers the status of Java EE 7, the Adopt-a-JSR online meeting, the changes introduced in the JCP in the past year as well as embedded Java. You can listen to the full podcast here.

Thursday Jan 03, 2013

JMS 2 Public Review Draft Published

JMS 2 is arguably one of the most important parts of Java EE 7. The JMS 2 EG officially published it's Public Review Draft today. Characteristic to the great work JMS 2 spec lead Nigel Deakin always seems to pull off, he created a pretty detailed page for the Public Review Draft on the Java.net project for JMS 2.

Nigel invites you to read the draft/Javadocs, download the reference implementation (standalone or with GlassFish), take the JMS 2 example code for a spin and send either him or the EG your feedback. The page also neatly summarizes the actual changes in JMS 2. The formal review period began on January 3rd and ends on February 4th, so act now!

Wednesday Dec 19, 2012

Marek Potociar on JAX-RS 2

Java EE 7 is turning the last lap! Late last month JAX-RS 2 (JSR 339) and Bean Validation 1.1 (JSR 349) were adopted by public review ballot, making them the first two JSR's to be ratified. InfoQ interviewed Marek Potociar, JSR 339 co-spec lead (Marek and Santiago Pericas-Geertsen are the dynamic duo leading JAX-RS).

Marek talks about JAX-RS 2 content, it's significance and the future. Read the full interview here.