Tuesday Apr 08, 2014

New book: EJB 3 in Action, Second Edition

'EJB3 in Action' is one of the reference books when it comes to this important area of Java EE. The second edition covering EJB 3.2 has just been published.

Over the years, the EJB specification has come a long way and has been greatly simplified but nevertheless EJB is still a large specification to grasp. This book is a great (and up-to-date!) introduction to the EJB Component Model. The book goes beyond just introducing EJBs in details as it also explains technologies related to EJB such as CDI and JPA (the older amongst us will remember that EJB, back in the days, used to also handle persistence). The book has also a full chapter devoted to WebSocket, a new important Java EE 7 technology. The final chapter of the book is devoted to a critical, some time over looked, topics: testing.

This is not a pure theoretical book as it really gives 2 views, it first introduce and explains EJBs but also JPA, CDI, etc. The book then explain how to use EJBs and the other technologies, how to put them in action! All in all, a great book to add to any Java EE 7 bookshelf!

Disclaimer: 'EJB 3 in Action' was co-authored by our own Reza Rahman. But to be honest, I was already praising the first edition of the book when Reza wasn't yet working for Oracle.

Wednesday Apr 17, 2013

An Overview of EJB 3.2

Java EE 7 includes a minor update of the EJB API with EJB 3.2 (JSR 345). For those of you keeping track of the EJB spec the past few years, EJB 3.0 and EJB 3.1 were pretty big releases, so this release is really more about pruning dead branches, some tidying up and minor fixes. In a brief blog entry, long time EJB fan, JBoss AS committer and JavaRanch Sherriff Jaikiran Pai does a great job of overviewing the changes in EJB 3.2. He talks about the pruning of EJB 2.1 CMP/ EJB 2.1 BMP/EJB 2.1 client views/EJB QL/JAX-RPC, local asynchronous session bean invocations and non-persistent EJB Timer Service in EJB Lite, TimerService.getAllTimer(), the ability to disable passivation of stateful beans and much more.

If the article whets your appetite to learn more about EJB 3.2, you could download the actual proposed final draft and give it a read. With the removal of a lot of the older cruft, the core specification is now about 450 pages - which is still nothing to sneeze at but much better than it has been in the past.

Wednesday Jan 23, 2013

Is it really EJB vs CDI?

With the advent of CDI into Java EE 6 and subsequent greater alignment of Java EE and EJB with CDI in Java EE 7, an interesting set of questions keep coming up every now and then: when do I use CDI? When do I use EJB? Do you need EJBs any more? Are EJBs more heavyweight than CDI?

David Blevins (the powerhouse developer behind OpenEJB and TomEE) provided his insightful and eloquent thoughts on these questions. David really knows what he is talking about since in addition to OpenEJB, he is also a core committer on the Apache CDI implementation, OpenWebBeans. We would even go so far as to say it is required reading for anyone interested in Java EE, EJB or CDI. Enjoy!

Sunday May 29, 2011

Maven, EJB and Java EE 6 Webinar - The Replay

Last week's webinar on Maven, Java EE 6 and GlassFish 3.1 is now available for replay on our YouTube Channel.

This new 30-minute session is another one done by Adam Leftik, Oracle GlassFish Server product manager.

ALT_DESCR

The session starts with an intro to Maven, which you may choose to skip to get to the demo. It covers creating Maven projects, authoring and testing EJBs using the EJBContainer API, JPA code as well as Maven-driven deployment to GlassFish using its Maven plugin.

Note that the Java EE 6 platform API's (javaee-api:6.0 and javaee-web-api:6.0) are now in Maven Central.

Tuesday Apr 19, 2011

EJB 3.2 can start!

With the two-week JSR Review Ballot for EJB 3.2 (JSR #345) now closed, the results are in. With 8 YES votes, one NO vote and 4 no-votes, the Executive Committee for SE/EE has approved this ballot and the JSR can proceed with forming an expert group (link to join).

JCP logo

EJB 3.2 is scheduled to be integrated into Java EE 7 in 2012 and will focus on PaaS requirements (mainly multi-tenancy) as well as possibly as factoring out container-managed transactions. Check out the JSR main page for the full list of preliminary goals of this EJB iteration.

Wednesday Apr 13, 2011

Marching towards a Java EE 7 fullhouse of JSRs - CDI 1.1 & EJB 3.2

You might have missed (I did) the filling of the EJB 3.2 JSR last week. This is the follow up to Linda's "EJB.next" entry posted last month. In addition to the multi-tenancy cloud requirements, factoring out transactions in a similar way interceptors became a standalone specification is one of the interesting goals of this work.

Just yesterday JBoss/RedHat has also submitted JSR 346, aka CDI 1.1 and Pete "CDI/Weld" Muir has a blog with further details. We're looking here mainly at an incremental release with improvement such as allowing the built in implementation of the conversation context to be used outside of JSF (full list). Pete is calling for expert group members, if you are interested the link to apply is on the JSR page.

ALT DESCR
ALT DESCR

With each submission, a two-week voting period by the JCP Executive Committee starts. This means that the EJB 3.2 results will be available this coming Monday (April 18th) and the CDI 1.1 results a week later on the the 25th.

In the meantime, on the CDI side you should probably give this recent "Contexts and Dependency Injection in Java EE 6" article a read and make sure you're well aware of what Java EE 6 and CDI have to offer today.

Friday Feb 18, 2011

First Java EE 6 Oracle Certifications now available

Oracle University (the training unit in the company) has now made available several new Java EE 6-related certifications. These are part of the Oracle Certification Program and cover EJB 3.1, JPA 2.0, Servlet & JSP, as well as Web Services.

Here are the links :

Oracle certifications

Java EE 6 - Enterprise JavaBeans Developer
Java EE 6 - Java Persistence API Developer
Java EE 6 - Web Services Developer
Java EE 6 - JavaServer Pages and Servlet Developer Certified Expert Exam

Each of the above links provides you with recommended training and preparation, pricing, date and exam topics. The complete certification path is here.

Saturday Oct 09, 2010

GlassFish Tips and Links #11: CDI, EJB 3.1, Spring, HTML5, Maven, JCP, Forks...

Recent Tips and News on Java EE 6 & GlassFish:

Informational Sign

Tips

TOTD #145: CDI Events - a light-weight producer/consumer in Java EE 6
Enterprise JavaBeans 3.1 with Contexts and Dependency Injection: The Perfect Synergy
Spring to Java EE – A Migration Experience
Problem with Grails on Glassfish v3?
Web Sockets and HTML5 in Glassfish
Book Review: Java EE 6 with GlassFish 3 Application Server

Links and News

• Maven 3 has been released: Sonatype, InfoQ
• GlassFish as Best Practices in Software Development (Johan)
• TSS Thread: Moving from Spring to Java EE 6: The Age of Frameworks is Over
GlassFish jobs at Indeed.com crosses 780 Flower NFA Update (Using GlassFish)
Proposed Maven Artifact Naming and Versioning for JavaEE
• Standards are Good for You: JBoss 6 Moving Towards JavaEE 6 with M5

Conferences

Java2Days 2010; Reports: Arun, Ivan: d1 & d2, Alexis.
Hudson User meetup in Tokyo (Nov 12th)
Silicon Valley Code Camp
• eBIG SIG: JavaEE 6 = Less Code + More Power (Oct 20th)
JavaOne Brazil (Dec 7th thru 9th)

Recent Sites Seen Running on GlassFish

• HPCSense uses GlassFish - twitter
ParaFarmacia, Mas Barata - Netcraft

JCP News and Future of Java

Now OPEN -- Nominations for EC seats
• TSS Thread: The Future of Java: forking, death, or stasis
• More Forking Opinions: Sacha and Greg.
• Java.Net Poll: Free Java? Closed Java? Evolving JCP? What's the Most Likely Path?

Saturday Apr 24, 2010

Fundamo, OSGi, iPad.. and More GlassFish News - April 24rd, 2010

Financial services on the go - GlassFish for Fundamo and profit
Alexis recently published a new Adoption Story on how Fundamo uses GlassFish v2 and OpenMQ for its Enterprise Platform. Overview at stories entry, details in questionnaire, and an overview in this earlier short video interview.
We are always interested in more GlassFish adoption stories, both from (non-paying) users and from (paying) customers.   Stories come from all industries and around the world, the last few entries are PSA Peugeot Citroën (France/Auto), iVox (Belgium/Print), NHIH (US/Gov-Health Care) and Suncorp (Australia/Finantial).

OSGi/JMS/MDB Example
Sahoo's latest post describes a hybrid OSGi/JavaEE example that uses JMS and Message Driven Beans and leverages GlassFish v3.  Post includes source code and detailed description.

Siebel CRM Support for the iPad
Oracle shows how to use their server-side REST APIs and the iPad SDK to provide access to Siebel CRM from the iPad.   Devices like the iPad (and the iPhone) seem a very good match for the Oracle Fusion Applications

Innovating at Warp-Speed: Monitis Announces Java Monitoring from the Cloud
Monitis announces Java Application Monitoring, a cloud-based monitoring solution for JMX-based applications, including GlassFish containers.  More details in announcement and product page.

EJB 3.1 Asynchronous Session Beans
From Paris, with love... Patrick Champion provides a short example of using EJB 3.1's @Asynchronous annotation.  More benefits of JavaEE 6!

Alfresco community 3.3 installation on Glassfish
A short but detailed description of how to install Alfresco Community 3.3 with GlassFish v2.1 and MySQL.

Getting started with Glassfish V3 and SSL
The JavaDude provides a tutorial on how to use GlassFish v3 with SSL.

Tuesday Mar 23, 2010

More EJB 3.1 Features: Application-Specific Portable JNDI Names

ALT DESCR

Ken has been writing a nice series of posts explaining new features in the EJB 3.1 specification. A few weeks ago he first explained the new Singleton Components and then showed how to use them for Application Startup / Shutdown Callbacks. His latest entry shows another aspect of the specification: Application-Specified Portable JNDI Names.

EJB 3.1 is an example of the improvements in Java EE 6 and was covered (by Ken) during our Virtual Conference last December. Alexis is in the process of making those recordings available at the GlassFishPodcast (available as MP3 and via the Apple iTunes store); Ken's presentation is Episode #47.

Monday Jan 18, 2010

EJB 3.1 interview on the GlassFish Podcast

ALT DESCR

Adding to the earlier series of JavaEE 6 / GlassFish v3 interviews, the latest episode of the GlassFish Podcast is an interview on EJB 3.1 with Ken Saks, the specification lead and tech lead of the GlassFish EJB implementation.

This is a two-part interview with part 1 focusing on the new features of the specification - packaging in WARs, the no interface view, EJB lite, Calendar-based timers, async calls, and more. The second part discusses more generally the role of EJB's as part of the larger Java EE platform and how it relates to the new CDI specification for instance. It also covers options for EJB clients, the role left for tools among other topics. Subscribing to the podcast is the best way to not miss part 2.