Java SE 6 Update 4 is released - "Good Riddance" with JAX-WS Endorsed

Java SE 6 Update 4 is now released. Download it here.

If you are a Metro user (either JAX-WS or WSIT) then this is a milestone release for you because it includes JAX-WS 2.1 API in the rt.jar. This means that, as a user, you no longer you need to copy JAX-WS or JAXB API jars in JAVA_HOME/jre/lib/endorsed as described here, here and here. Hurrah!

After you have downloaded and installed JDK 1.6 U4, java -version shows:

java version "1.6.0_04"
Java(TM) SE Runtime Environment (build 1.6.0_04-b12)
Java HotSpot(TM) Client VM (build 10.0-b19, mixed mode, sharing)

wsgen -version shows:

JAX-WS RI 2.1.1 in JDK 6

wsimport -version shows:

JAX-WS RI 2.1.1 in JDK 6

Additionally, you can also verify by greping for class in JAVA_HOME/jre/lib/rt.jar. This is a new class introduced in JAX-WS 2.1.

Now after you've installed Java SE U4, you can download Metro 1.1, set JAVA_HOME to point to this new Java SE installation and you can easily import a WSDL as:

wsimport -d temp http://localhost:8080/MetroWithJavaSE6/HelloService?WSDL
parsing WSDL...

generating code...

compiling code...

If you try to import the same WSDL with an earlier release of Java SE 6, then you'll see the error message:

You are running on JDK6 which comes with JAX-WS 2.0 API, but this tool requires JAX-WS 2.1 API. Use the endorsed standards override mechanism (, or use -Xendorsed option.

We hope this will make your life simpler :)

Metro 1.0.1 is anyway baked in GlassFish v2 UR1. You can override it with Metro 1.1 as described in TOTD #21.

Technorati: webservices metro jax-ws glassfish endorsed javase6 jdk


You use mac so how can you develop using jdk 1.6??

You installed a OS just to use java?

Posted by Nuno on January 11, 2008 at 11:17 AM PST #

MacOS is one of my machines :) A developer preview of JDK 6 is also available on Mac OS (not from Sun) as explained at;

Posted by Arun Gupta on January 12, 2008 at 12:23 AM PST #

Hi Arun,

That is great news about the endorsed. I am using JAXWS 2.1.2 and will upgrade to JAXWS 2.1.3 for my GA release on the server side so will be using endorsed for a while longer since it looks as if 6u4p is using 2.1.1.

Do you know why they are releasing with a earlier version of JAXWS ?


Posted by Tony Anecito on January 15, 2008 at 05:12 AM PST #

Tony, JAX-WS bits in Java SE 6 were frozen before JAX-WS 2.1.3 was released. However you only need to include recent bits in your classpath now and it would just work!

Posted by Arun Gupta on January 15, 2008 at 06:23 AM PST #

Thanks for your news

Posted by Ivan on January 15, 2008 at 03:13 PM PST #

[Trackback] 2008 Awards are announced - NetBeans, GlassFish Metro and Java SE 6 get good ones. My nominations were announced here and I've recreated the table here along with the winners.  Category My Selection Winner Technology Rich Inter...

Posted by Arun Gupta's Blog on January 15, 2008 at 10:18 PM PST #

very good tahnks

Posted by sahibinden satılık daire on January 18, 2008 at 04:41 PM PST #

[Trackback] Metro is the Web services stack in GlassFish. It is your one-stop shop from a simple Hello World to Secure, Reliable,  Transactional and .NET 3.0 interoperable endpoint. Metro Tooling is provided by NetBeans and other options are explained here. S...

Posted by Arun Gupta's Blog on January 24, 2008 at 11:20 PM PST #

[Trackback] This TOTD is inspired by Learning JavaFX Script - Part 3. The original article explains how to invoke a Web service from a JavaFX client using NetBeans 5.5.1 and GlassFish v1. Newer version of both NetBeans and GlassFish are available...

Posted by Arun Gupta's Blog on January 31, 2008 at 12:59 AM PST #

Yes good ridance.
I question the need to bundle this in the rt.jar in the first place. Seems a very bad idea in hinesight.

Also this version still seems to have an issue holding onto response objects after servicing a request. Are you aware of this and is there a fix ?

Posted by Liam Knox on March 18, 2008 at 04:18 AM PDT #

Memory Issue

Not sure why you guys dont look into this? Oh well moving to CXF soon to support Kerberos. Looking at the src seems a more quality implementation



Posted by Liam Knox on March 19, 2008 at 03:09 AM PDT #

Metro supports WSS Kerberos Token Profile and it has been interop tested with .NET 3.0 recently.

Posted by kumar on March 19, 2008 at 04:42 AM PDT #

We are not aware of any memory issues in RI 2.1.3/metro 1.1.1. If you can send the details to Metro forum ( then we can look into it.

Posted by Arun Gupta on March 19, 2008 at 05:12 AM PDT #

Please see my post on

With simple code attachment.
Profiling this I see at least one response being kept held of

Let me know if you need more info



Posted by guest on March 19, 2008 at 05:28 AM PDT #


Doesnt seem to exist?

Posted by Liam Knox on March 19, 2008 at 05:31 AM PDT #
is the home page of Forum where you posted your question. You can also reach by clicking on "Metro and JAXB" on top of the page.

Posted by Arun Gupta on March 19, 2008 at 06:48 AM PDT #

That site must of be down earlier, I was getting page not found. Can you please look into profiling the sample app, and let me know if you need any more details? I have run it agaist 1.6.0_04 (XP) and a still see an issue


Posted by Liam Knox on March 19, 2008 at 08:16 AM PDT #

This issue is further discussed in the forum thread at:

Posted by Arun Gupta on March 19, 2008 at 10:57 AM PDT #

I have put my findings based on these suggestions on




Posted by Liam Knox on March 22, 2008 at 04:42 AM PDT #

Post a Comment:
Comments are closed for this entry.

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


« July 2016