Tuesday Sep 07, 2010

Java EE 6 Update 1 with JDK 6 U21 - and Using the Update Tool

We have released new Java EE 6 SDK w/ JDK 6 bundles using JDK 6 U21 (the good one, not this one). All bundles, including the non-JDK bundles which have not changed since June 17, 2010, are now at OTN; check the SDK download page, or navigate directly to the SDK w/ JDK bundles for Web Profile and Full Platform.

All the IPS packages have been refreshed; those for SDK w/ JDK have the new JDK components while those for the SDK w/o JDK have changed only very slightly. Since I normally use a Mac, I use an SDK w/o JDK; in that case, the only file changed is the about_sdk.html in the sdk-branding IPS component (or about_sdk_web.html in sdk-branding-web for web profile).

If you have installed the Java EE 6 SDK and enabled its Desktop Notifier, the update machinery will (eventually) detect the new packages, which will activate the following sequence:

First you will see the notifier; you can either dismiss it, or you can click on it to continue the update process

Next you will be presented an overview of the available updates.  There may be more than one, depending on what you have installed in your machine. For each one, you will be shown the size of the download (3.4KB in this case - since it is just one file in one component) and you will be asked to accept the license.

You can also manage the details for the installation process... and you are given an opportunity to look at the Ads :-)

The next step is the actual download, and a report on its completion.

At this point you can ask for details of the installed software. For example, you can go look at what components have been installed and their properties, or what AddOns are available, or what repositories you are using.

As you can see, this is all very painless. The upgrade is almost a no-op in this case but the same exact process will be used for larger updates and, since IPS underlies all the GlassFish 3 distributions, this also applies to the Commercial Distributions from Oracle.

The Oracle official documentation has very good explanations for all these tasks (thanks, Scott!); see Chapter 10: Extending and Updating GlassFish Server, specially Upgrading to Oracle GlassFish Server from the Oracle GlassFish Server Open Source Edition and Updating Installed Components. Commercial patches are installed in exactly the same way - which, compared to the previous approach, has customers really happy.

Friday Oct 05, 2007

NOTD - Newer JAX-WS in JDK 6

Radio Receiver Icon

Rama reports that Java SE 6 Update N will not only please people waiting for the "Consumer JRE" but also Web Services developers.

The much improved JAX-WS 2.1.1 implementation will also be part of the core JRE set of APIs. This will remove the need for the endorsed mechanism required today in order to use both JAX-WS 2.1 and Java 6.

Tuesday Aug 21, 2007

GlassFish v2, 64-bit and default VM

Duke Performance

Here are a couple of things that change with GlassFish v2 which should trigger better out of the box performance:

•  GlassFish v2 supports 64-bit and thus can have a VM with terabytes of heap (see Performance Tuning Guide).

•  The GlassFish v2 configuration no longer has an explicit -client switch for better startup time in development mode. This means that Ergonomics will kick in to determine which is best, client or server VM. Read more here.

•  GlassFish v2 also supports Java 6. Performance benefits are almost immediate and free (no code change, no recompile or redeploy). The use of JSR 199 by the JSP compiler is one of the benefits. The SPECjAppServer number is another one.

Tuesday Feb 06, 2007

ClassLoader Magic - JAX-WS/JAXB 2.1 on JDK6 Without Using Endorsed Standards

Picture with ClassLoader's Magic

Since Java SE 6 includes JAX-WS 2.0 and JAXB 2.0 the straight-forward way to upgrade to the updated maintenance specifications requires using endorsed standards. But Kohsuke has figure out a way to apply some ClassLoader Magic so that this is not necessary. The result is a transparent experience.

ClassLoaders have always been part of the trickiest part of the Java platform; see for example this report from the First JavaOne; I'm looking forward to having a moment to read carefully Kohsuke's description.

Wednesday Jan 24, 2007

Using JDK6 with GlassFish v2

The outline of a Mustang

Java SE 6 has Web Services support through the JAXB 2.0 and JAX-WS 2.0 specifications. The implementations used are those used in GlassFish v1, but GlassFish v2 implements the latest versions of the specs: JAX-WS 2.1 and JAXB 2.1 and this complicated things.

Earlier Bhakti had explained how to use endorsed standards to run GlassFish v2 on JDK 6, but recent builds (starting with b31) do this automatically and she now has an updated description.

Tuesday Oct 31, 2006

JAX-WS 2.1 and JAXB 2.1 Review Started


The JAXB 2.1 and JAX-WS 2.1 specifications are going through the Maintenance Release process and are in the 30 day review. The official JCP sites are here and here.

Doug, Arun and Kohsuke have been talking about the features in recent blogs and mailing lists, including JAXB 2.1 Revisited, Stateful WS, and Why WS Addressing.

Kohsuke also wrote about The Woes of Framemaker and, although there are things I like about FM, I agree with Kohsuke - every time I had to do a pass on the specs I had to be careful of RSI.

Tuesday Aug 01, 2006

Even Faster! JSP Compilation with Mustang and GlassFish

An F/A-14C Breaking the Sound Barrier

Most JSP implementations translate a JSP file into a Java source file and then compile it, which means that Java compilation speed is a key factor in the JSP development experience. Recently Jan reported on how to use the JDT Compiler to get a substantial improvement but Kin-Man now reports even Better Results.

Kin-Man updated the JSP GlassFish compiler to dynamically use the JSR-199 APIs when running on Mustang so it can bypass both ant and the file system. The results are very good: JSP compilation is around 10x faster and the JSP test-suite is now running 3.5x times faster!

This is already checked into GlassFish V2 and will be in the next promotion b11, and in the first milestone. And Kin-Man also has further improvements to try out...

Monday Jan 09, 2006

Java - Spring Chicken or Old Hen ?

Southpark James Gosling

James Gosling has been in the thick of the debate over how Java stacks up against some of the emerging server-side software technologies (dynamic scripting languages, LAMP, AJAX). In an interview with zdnet he's pretty frank about the role of Java, Ruby, PHP, LAMP, etc. and the importance of tools for developer productivity.

I particularly like (and agree) with what he says about Java EE (J2EE) :

You take things like J2EE (server software), it's become almost sort of the opposite of trendy, in the sense that it's totally mainstreamed, totally proven mission critical. It's very corporate, it has been really seriously battle tested, and for lots of folks it's become a completely safe bed (sic).

For people running businesses - "battle tested", "corporate", "mission critical" are the kind of adjectives you want to hear. That said Java (and Java EE) is still managing to pique the interests of the next generation of developer with innovative new features in the Java language and the Java EE platform - that's a major achievement - balancing the tension of the mainstream and the early adopter.

I'm fairly sure that Java still has a long way to go before it reaches its prime and it's encouraging to see that Java is still entering new markets and finding entirely new applications (Java sets the standard for future cable systems).