Tuesday Mar 04, 2014

Migrating from GlassFish to WebLogic: The Beauty of Java EE

WebLogic is Oracle's strategic application server for the Java EE Platform. And since Oracle decided to focus on it for commercial support, and to leave GlassFish free of any ties from commercial decisions, I decided to bring customers and users a series of blog posts about migrating Java EE apps from GlassFish to WebLogic.

GlassFish will continue to thrill as the Open Source Reference Implementation for the platform, its community, and source of innovation, like we are seeing through the Java EE 8 survey.

In this series, I will help GlassFish customers as well users to experiment, try, and evaluate Oracle WebLogic 12c (Java EE 6 certified) to deploy their mission critical applications. Continue reading through the first part, where I actually demonstrate "the Beauty of Java EE 6", by migrating a sample application without any code change.

And don't forget to follow @glassfish, @java_ee, and @oracleweblogic on Twitter! 

Sunday Jul 21, 2013

Java EE during OTN Tour 2013 in Latin America

The Oracle Technology Network Tour 2013 has already started, bringing several Oracle and non-Oracle speakers to OUGs (Oracle User Groups) to countries across Latin America. You can check the official OTN Tour 2013 page of the tour to follow up with agenda, dates, speakers and other information. Last year I participated giving talks in Uruguay and Argentina about Oracle WebLogic 12c. That time, I had recently joined Oracle and didn't know much about it. But this year though, I wanted to do more.

Talks
I proposed a few abstracts to OUGs/JUGs choose which could work best for each country, and here are the topics:

  • GlassFish in Production Environments
  • What WebLogic 12c Has To Offer to Boost Your Productivity
  • What's new in Java EE 7
  • Hands-on for Java EE 7

You can read the full story on my blog

Friday Jul 19, 2013

Java EE@Chicago JUG

On July 16th, I presented our flagship Java EE 7 talk at the Chicago JUG. Heather VanCura of the JCP helped arrange the talk.

The talk went very well - over 75 people attended by my count. More details, including the slide deck, posted on my personal blog.

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.

Monday Jul 15, 2013

Java EE 7 Tutorial Available!

Many of you are familiar with the official Java EE Tutorial already. It is a great resource for learning Java EE and it is totally free!

The Java EE 7 version of the tutorial is now available along with the SDK/GlassFish 4. There's both a PDF version and an HTML version. In addition, the team behind the tutorials has also developed a great sample/starter application for Java EE 7 named Your First Cup: An Introduction to the Java EE Platform that should be very helpful to beginners.

A detailed blog entry talks about both the updated tutorial and starter application.

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.

Monday Jul 08, 2013

Free Webinar on WebSocket, JSON-P, HTML 5 and Java EE 7

As developers, there's nothing better than a decent show-and-tell. OLL-Live is offering a free webinar titled Java EE 7: Using Web Sockets for Real-Time Communication on July 10 (Wednesday) at 8 AM Pacific Time. It will demonstrate writing an HTML 5 front end using a WebSocket, JSON-P, and Java EE 7 backend.

Don't miss out, check out the details and register now! I did mention it's free, right :-)?

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 Jul 04, 2013

Java EE 7 Javadocs Now Online

The official Javadocs are now available along with the recent Java EE 7 SDK release. While most of us use Javadocs for reference, some of us use Javadocs as an invaluable learning tool. I've personally certainly always found it useful to get deeper insight into any given API.

Comparing the Java EE 7 Javadocs with the ones for Java EE 6 also provides interesting perspectives into the changes such as the packages, features and APIs added.

Tuesday Jul 02, 2013

JBatch Overview

It seems batch processing is moving more and more into the realm of the Java developer. In recognition of this fact, JBatch (aka Java Batch, JSR 352, Batch Applications for the Java Platform) was added to Java EE 7. In a recent article JBatch specification lead Chris Vignola of IBM provides a high level overview of the API. He discusses the core concepts/motivation, the Job Specification Language, the reader-processor-writer pattern, job operator, job repository, chunking, packaging, partitions, split/flow and the like.

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 Jun 25, 2013

deny-uncovered-http-methods in Servlet 3.1

Servlet 3.1 is a relatively minor release included in Java EE 7. However, the Java EE foundational API still contains some very important changes. One such set of features are the security enhancements done in Servlet 3.1 such as the new deny-uncovered-http-methods option.

Servlet 3.1 co-spec lead Shing Wai Chan outlines the use case for the feature and shows you how to use it in a recent code example driven post. You can also check out the official specification yourself or try things out with the newly released Java EE 7 SDK.

Monday Jun 24, 2013

Java EE@NY Java SIG

On May 29th, I presented our flagship Java EE 7 talk at the New York Java Special Interest Group. The NY Java SIG is the first Java User Group in existence (since September 1995) and is the largest Java User Group in North America.

The talk went very well - the official RSVP shows a sold out event with 275 attendees. More details, including the slide deck, posted on my personal blog.

Friday Jun 07, 2013

What's New in CDI 1.1?

Introduced in Java EE 6, CDI is clearly a key API to standardize dependency injection in enterprise Java. A lot of the work related to CDI in Java EE now involves treating CDI as an effective mechanism for unifying the Java EE component model and aligning others specs around it to make for a more cohesive platform. Examples of this on-going effort in Java EE 7 includes aligning the JSF component model/scoping to CDI, decoupling declarative transactions from the EJB component model through the JTA 1.2 @Transactional CDI interceptor, modernizing the JMS 2 API utilizing CDI, better support for CDI in Bean Validation 1.1 and many others.

CDI 1.1 itself is a point release that has a relatively long list of smaller but nonetheless important fixes and enhancements. In a recent blog post, CDI 1.1 specification lead Pete Muir does a good job of listing out the changes. The post is especially valuable for the referenced links that you can dig into to see if any of the changes are immediately useful to you if you have adopted CDI already.

Monday Jun 03, 2013

An Overview of the Java API for WebSocket

The Java API for WebSocket (JSR 356) is one of the key parts of Java EE 7. It allows Java developers to write Java HTML5/WebSocket applications with a simple, fluent, high-level API, both on the client and the server-side. With the official Java EE 7 launch looming there's already a flurry of great articles on topics like JSR 356.

In a recent OTN article, Johan Vos provides an overview of the Java API for WebSocket. He covers WebSockets, the JSR, the programming model, API details through code examples and advanced features. The article is a great starting point to learning WebSocket. You could also take a look at my slide deck below.

You are of course encouraged to take a look at the official specification (the JSR recently had it's final release). At fifty some pages, it is pretty digestible.