Thursday Jun 27, 2013

Java EE 7 support in Eclipse 4.3

Eclipse Kepler (4.3) features 71 different open source projects and over 58 million LOC. One of the main themes of the release is the support for Java EE 7. Kepler specifically added support for the features mentioned below:
  • Create Java EE 7 Eclipse projects or using Maven
  • New facets for JPA 2.1, JSF 2.2, Servlet 3.1, JAX-RS 2.0, EJB 3.2
  • Schemas and descriptors updated for Java EE 7 standards (web.xml, application.xml, ejb-jar.xml, etc)
  • Tolerance for JPA 2.1 such as features can be used without causing invalidation and content assist for UI (JPA 2.1)
  • Support for NamedStoredProcedureQuery (JPA 2.1)
  • Schema generation configuration in persistence.xml (JPA 2.1)
  • Updates to persistence.xml editor with the new JPA 2.1 properties
  • Existing features support EE7 (Web Page Editor, Palette, EL content assist, annotations, JSF tags, Facelets, etc)
  • Code generation wizards tolerant of EE7 (New EJB, Servlet, JSP, etc.)

A comprehensive list of features added in this release is available in Web Tools Platform 3.5 - New and Noteworthy.

Download Eclipse 4.3 and Java EE 7 SDK and start playing with Java EE 7!

Oracle Enterprise Pack for Eclipse was released recently that uses Eclipse Kepler RC3 but will be refreshed soon to include the final bits.

Wednesday Jun 12, 2013

Java EE 7 SDK and GlassFish Server Open Source Edition 4.0 Now Available

Java EE 7 (JSR 342) is now final!

I've delivered numerous talks on Java EE 7 and related technologies all around the world for past several months. I'm loaded with excitement to share that the Java EE 7 platform specification and implementation is now in the records.

The platform has three major themes:

  • Deliver HTML5 Dynamic Scalable Applications
    • Reduce response time with low latency data exchange using WebSocket
    • Simplify data parsing for portable applications with standard JSON support
    • Deliver asynchronous, scalable, high performance RESTful Service
  • Increase Developer Productivity
    • Simplify application architecture with a cohesive integrated platform
    • Increase efficiency with reduced boiler-plate code and broader use of annotations
    • Enhance application portability with standard RESTful web service client support
  • Meet the most demanding enterprise requirements
    • Break down batch jobs into manageable chunks for uninterrupted OLTP performance
    • Easily define multithreaded concurrent tasks for improved scalability
    • Deliver transactional applications with choice and flexibility
This "pancake" diagram of the major components helps understand how the components work with each other to provide a complete, comprehensive, and integrated stack for building your enterprise and web applications. The newly added components are highlighted in the orange color:

In this highly transparent and participatory effort, there were 14 active JSRs:
  • 342: Java EE 7 Platform
  • 338: Java API for RESTful Web Services 2.0
  • 339: Java Persistence API 2.1
  • 340: Servlet 3.1
  • 341: Expression Language 3.0
  • 343: Java Message Service 2.0
  • 344: JavaServer Faces 2.2
  • 345: Enteprise JavaBeans 3.2
  • 346: Contexts and Dependency Injection 1.1
  • 349: Bean Validation 1.1
  • 352: Batch Applications for the Java Platform 1.0
  • 353: Java API for JSON Processing 1.0
  • 356: Java API for WebSocket 1.0
  • 236: Concurrency Utilities for Java EE 1.0

The newly added components are highlighted in bold.

And 9 Maintenance Release JSRs:

  • 250: Common Annotations 1.2
  • 322: Connector Architecture 1.7
  • 907: Java Transaction API 1.2
  • 196: Java Authentication Services for Provider Interface for Containers
  • 115: Java Authorization for Contract for Containers
  • 919: JavaMail 1.5
  • 318: Interceptors 1.2
  • 109: Web Services 1.4
  • 245: JavaServer Pages 2.3

Ready to get rolling ?




A few articles have already been published on OTN:

And more are coming!

This blog has also published several TOTD on Java EE 7:

All the JSRs have been covered in the Java Spotlight podcast:

The latest issue of Java Magazine is also loaded with tons of Java EE 7 content:

Media coverage has started showing as well ...
And you can track lot more here.

You can hear the latest and greatest on Java EE 7 by watching replays from the launch webinar:

This webinar consists of:
  • Strategy Keynote
  • Technical Keynote
  • 16 Technical Breakouts with JSR Specification Leads
  • Customer, partner, and community testimonials
  • And much more
Do you feel enabled and empowered to start building Java EE 7 applications ?

Just download Java EE 7 SDK that contains GlassFish Server Open Source Edition 4.0, tutorial, samples, documentation and much more.


Wednesday Dec 21, 2011

WebLogic 12c and Coherence: OTN Virtual Developer Day in Jan/Feb 2012

Oracle WebLogic Server 12c is now available for about 2 weeks. Do you know it comes with an easy-to-use zip installer ? Have you downloaded and tried it ?

An OTN Virtual Developer Day is coming to talk about the latest and greatest features in WebLogic Server 12c. This is your chance to immerse yourself in learning how WebLogic Server 12c supportes the Java EE 6 standards how Maven support is enhanced and made much more feature-rich, extensive integration with NetBeans and Eclipse will be practised using hands-on lab sessions, and there will be opportunity to learn about Coherence as well.

The complete agenda and session abstract is available here.

When ?
Americas, Jan 24, 2012
Europe/Russia: Feb 7th, 2012
Asia Pacific (English): Feb 9, 2012
Asia Pacific (Chinese): Feb 21, 2012

Just register online here!

Also check out the following useful links:
  1. Replay from online launch event + developer deep dive
  2. WebLogic Blog
  3. Online Documentation
  4. WebLogic Server Data Sheet

Also check out the social presence of WebLogic by clicking on the image below:

All the information about WebLogic Server is available from!

Wednesday Jun 22, 2011

TOTD #165: Eclipse Indigo, Java EE 6 and GlassFish

Eclipse Indigo Logo
46 millions lines of code committed by 408 developers from 49 organizations is the recipe for Indigo, the sixth release as part of the Eclipse annual release train. The key features of this release are:
  • EGit 1.0 enabling Git support
  • WindowBuilder, a GUI Builder
  • Jubula for automated functional testing for Java and HTML
  • EclipseLink 2.3 with support for multi-tenant JPA entities
  • Equinox 3.7 with OSGi 4.3 specs

Read the complete list of improvements here and download now!

An updated version of the GlassFish plugin is also pushed to the update center and can be downloaded by clicking on "Additional Server Adapters" and selecting GlassFish as shown below:

Couple of much needed improvements in the plugin are:
  1. Configurable "Preserve Sessions across Re-deploys" by double-clicking on the server properties:

    This property could only be configured during server registeration in earlier versions.

  2. Richer management of GlassFish from within the IDE such as viewing all the resources (JDBC, Connectors, and JavaMail) as shown below:

The screencast #36 shows complete Java EE 6 development using GlassFish and the video is  embedded here for convenience:

This blog has published multiple entries on Eclipse and here are some of them:

Saturday Mar 26, 2011

Eclipse Con 2011 Hands-on Lab delivered: OSGi, JavaEE, GlassFish, Eclipse a powerful foursome

Sahoo and I delivered OSGi-enabled Java EE Applications using GlassFish and Eclipse Hands-on Lab at Eclipse Con 2011 earlier this week. The conference had an excellent line up of sessions, speakers, receptions and I wanted to engage but could attend only one day. The keynote on the third day titled "The Java Renaissance" was jointly delivered by Mark Reinhold, Chief Architect of the Java Platform group at Oracle and John Duimovich, Java CTO at IBM. Read more coverage of the keynote and Oracle's participation here.

The hands-on built a simple User Registration and Authorization application and showed different combinations of OSGi and Java EE development and deployment in GlassFish. The first step was to to deploy a simple OSGi service and client in GlassFish. Then the OSGi client was replaced by a Web Application Bundle (aka hybrid application) which used @OSGiService for dynamic discovery, bind, inject, and track the OSGi service (more details in TOTD #154). Then the service bundle was replaced by a JavaEE application using EJB and JPA. There were detailed instructions (PDF) to go through all the exercises. The screencast #38 (video) walks you through building the entire application, the video inlined here too:

About 35 attendees were able to make progress after the spotty Internet connection started working. The 5 USB sticks provided by Eclipse Con turned out pretty handy to pre-load all the software requisites. We shared a zip of our ".m2" directories and "m2eclipse-\*" plugins directory for the folks with no Internet. The high point for me was when one of the attendees finished the entire lab in a little over an hour and left. That also helped us assess the quality of document which we tried to make pretty self explanatory. We found one missing instruction from the document and have already fixed it. Overall, about 60% of the attendees completed the lab and rest of them left with partial setup and instructions. Let us know if you attended the lab and found it useful.

Many thanks to Doug and Ankush, the Student Assistants assigned by EclipseCon for our labs, to help attendees keep chugging along!

I was also "lucky" to win a BlackBerry 9670 smartphone + remote stereo bluetooth gateway + international charger + headset. The RIM folks told me that this worth $700 but Amzon sells the raw phone for $19.99. The total cost comes out way under $100 even after including all the accessories. Anyway this device runs only on Sprint so of no use to me. Are you interested in purchasing ? :-)

The reception in the evening (typically the best part) was great and gave me a chance to socialize with several folks. Here are some pictures captured from the event:

Technorati: conf eclipsecon osgi javaee glassfish eclipse

Wednesday Mar 23, 2011

Screencast #38: "Developing OSGi-enabled Java EE Applications using GlassFish" Tutorial at EclipseCon 2011

This screencast provide detailed instructions on how to develop OSGi-enabled Java EE Applications using GlassFish and Eclipse which will be delivered as a 2-hrs tutorial at the EclipseCon 2011.

You can download the required software and follow the detailed instructions (PDF) along with this screencast. Enjoy the screencast in HD in the full-screen mode:

Here are some time lines in case you want to move around in the screencast:

Introduction & Software Installation 0:00
Exercise 1 (Simple OSGi Service and Client) 2:42
Exercise 2 (Web Application Bundle) 11:57
Exercise 3 (EJB OSGi Service) 27:28
References 40:10

Many thanks to Doug & Ankush for an extensive review of the instructions!

Let us know your feedback by posting a question to the GlassFish Forum.

Technorati: conf eclipsecon osgi javaee glassfish eclipse screencast

Friday Feb 11, 2011

Java wishlist for Windows Azure

TOTD #155 explains how to run GlassFish in Windows Azure. It works but as evident from the blog, its not easy and intuitive. It uses Worker Role to install JDK and GlassFish but the concepts used are nothing specific to Java. Microsoft has released Azure SDK for Java and AppFabric SDK for Java which is a good start but there are a few key elements missing IMHO. These may be known issues but I thought of listing them here while my memory is fresh :-)

Here is my wish list to make Java a better on Windows Azure:

  1. Windows Azure Tools for Eclipse has "PHP Development Toolkit" and "Azure SDK for Java" but no tooling from the Java perspective. I cannot build a Java/Java EE project and say "Go Deploy it to Azure" and then Eclipse + Azure do the magic and provide me with a URL of the deployed project.
  2. Why do I need to configure IIS on my local Visual Studio development for deploying a Java project ?
  3. Why do I have to explicitly upload my JDK to Azure Storage ? I'd love to specify an element in the "ServiceConfiguration" or where ever appropriate which should take care of installing JDK for me in the provisioned instance. And also set JAVA_HOME for me.
  4. Allow to leverage clustering capabilities of application servers such as GlassFish. This will also provide session-failover capabilities on Azure :-)
  5. Sticky session load balancing.
  6. If Windows VM crashes for some reason then App Fabric restarts it which is good. But I'd like my Java processes to be monitored and restarted if they go kaput. And accordingly Load Balancer switches to the next available process in the cluster.
  7. Visual Studio tooling is nice but allow me to automate/script the deployment of project to Azure.
  8. Just like Web, Worker, and VM role - how about a Java role ?
  9. And since this is a wishlist, NetBeans is the best IDE for Java EE 6 development. Why not have a NetBeans plugin for Azure ?
  10. A better integration with Java EE APIs and there are several of them - JPA, Servlets, EJB, JAX-RS, JMS, etc.
  11. The "happy scenario" where every thing works as expected is fine is good but that rarely happens in software development. The availabilty of debugging information is pretty minimal during the "not so happy scenario". Visual Studio should show more information if the processes started during "Launch.ps1" cannot start correctly for some reason.

And I'm not even talking about management, monitoring, adminstration, logging etc.

Thank you Microsoft for a good start with Java on Azure but its pretty basic right now and needs work. I'll continue my exploration!

Christmas is coming later this year ... and I'll be waiting :)

Technorati: windows azure wishlist glassfish netbeans eclipse

Monday Jan 24, 2011

2-day Java EE 6 workshop in Budapest - Delivered, More coming!

I delivered a 2-day Java EE 6 workshop in Budapest last week. This was my longest speaking engagement at one shot and I really enjoyed it! There were about 30 attendees and hoefully they enjoyed it too :-)

Other than talking about the key Java EE 6 technologies (CDI, Bean Validation, Servlets 3, JSF2, JPA2, EJB 3.1), the 2-day workshop gave ample time to show NetBeans and Eclipse live coding sessions and interact with the attendees. Here is some feedback from the attendees:

  • We expect more productivity and cleaner code with Java EE 6.
  • Simplified EJB development without XML DD.
  • Good mixture & collection of effective tools of coding styles today, seems really effective.
  • Like CDI, better than Spring because of no XML DD. Hate XML.
  • CDI is one of the most powerful features of Java EE 6, make it easier with web tier, also makes it possible to introduce new annotations.
  • Opens the barrier, not so rigorous, more flexible, For example EJBs in web container.
  • Auto-deploy is great
  • JSF is usable.
  • Programmers Non-standrd way to solve problems, Java EE 6 is solving that problem.
  • Improvements of EJB testability.

This workshop is also getting scheduled at the following locations (provided enough attendees register) ...

Here are some pictures from Budapest ...

Also managed to get another run by River Danube:

And now the complete photo album:

Technorati: conf javaee6 glassfish netbeans eclipse

Friday Dec 17, 2010

Screencast #36: Web App Development using Java EE 6, GlassFish, and Eclipse - Webinar Recording

A recently concluded webinar on "Web Application Development with Java EE 6, GlassFish, and Eclipse" demonstrated:

  • Easy creation of web.xml-free and annotation-driven Servlets
  • HTTP session preservation across re-deploys to boost productivity
  • Creating JPA entities from an existing database table
  • Simplified packaging of EJB in a WAR file
  • Facelets as the templating language for JSF pages
  • Using EJB as backing bean for JSF pages
  • Publishing RESTful resources using JAX-RS
  • Injection in JAX-RS resources

And many other features!

The recording from the webinar is is now available:

The entire source code built during the webinar can be downloaded here.

How are you building your Java EE 6 applications ?

Technorati: webinar javaee6 glassfish eclipse screencast

Saturday Dec 04, 2010

Rich Web Experience 2010 Trip Report

The Rich Web Experience 2010 concluded earlier this week in Fort Lauderdale. In a typical No Fluff Just Stuff fashion, it was truly a rich experience starting from the location (hotel, city, and weather), food, content, speakers, 90-minute sessions, schwag, and many other items. There were about 350 attendees with topics ranging from HTML5, CSS3, NodeJS, GWT, iPad / iPhone / Android development, Grails, Git, Hudson, and pretty much all over the landscape. I gave three sessions on:
  1. Java EE 6 = Less Code + More Power
  2. Java EE 6 Toolshow
  3. Using Contexts and Dependency Injection in the Java EE 6 Ecosystem
The first session explained the three themes of Java EE 6 (light-weight, extensibility, and ease-of-use), explained newly introduced and updated specifications in the platform, and finally the modular, hybrid OSGi/Java EE host, embeddable, extensible, and high-availability nature of GlassFish. The attendance was light but audience was interactive.

The second session was a no-slides session and used NetBeans and Eclipse to demonstrate the following Java EE 6 features:
  1. @WebServlet
  2. @Stateless, No-interface view, EJB 3.1 in a WAR
  3. Embeddable EJB (unit test)
  4. @Schedule
  5. @PersistenceUnit in @WebServlet, @PersistenceContext in @Stateless
  6. Facelets templating
  7. CDI stereotypes @Model, @Qualifier
  8. RESTful Web services from Entity classes
The code build during the talk can be downloaded here.

The third session on CDI was a revision of my JavaOne session with a lot more context and code samples added. The talk explained CDI key concepts like type-safe dependency injection, Qualifiers, Stereotypes, Producer/Disposer, Alternative, Interceptor, Decorators, Scopes, CDI tooling, and other topics.

The slides for both the sessions are now available:

On a personal front, I totally enjoyed coming from a 40 degrees weather in San Jose to 70 degrees in Ft Lauderdale and that too with hotel right on the beach. I had couple of great runs by the Atlantic Ocean and a good walk along the beach.

Thursday had 2 hours dedicated for beach activity but I had to leave to catch my flight to Washington DC :( The dinner, lunch, and breakfast as part of the conference was healthy with a good mix of salads + carbs + proteins. The lemon tea + honey allowed me to deliver three 90 minute sessions in one day. And lastly enjoyed catching up with Venkat, Matthew McCullough, Kohsuke, Ben Ellingson and many other friends.

Here are some pictures:

And the complete album:

Next stop as part of No Fluff Just Stuff will be UberConf, Jul 12-16, 2011, mark your dates!

Technorati: conf glassfish javaee6 netbeans eclipse cdi weld rwx2010 richwebexperience florida

profile image
Arun Gupta is a technology enthusiast, a passionate runner, author, and a community guy who works for Oracle Corp.

Java EE 7 Samples

Stay Connected


« June 2016