JavaTM Web Services Developer Pack 2.0 Release Notes


Supported Platforms
What's New in Java WSDP 2.0?
Environment Variables
Using Ant That Comes with Java WSDP on Linux
Uninstalling Java WSDP 2.0
Known Issues


The JavaTM Web Services Developer Pack (Java WSDP) is an all-in-one download containing key technologies to simplify building of web services using the Java 2 Platform. For release notes for these technologies see:

Go to the Java Web Services Developer Pack 2.0 index page and visit the links to the API documentation and reference documentation for all the technologies.

Supported Platforms

This release of the Java WSDP has been tested in various configurations with J2SE 5.0 on the following platforms with the containers Sun Java System Application Server Platform Edition 8.1 Update 2, and Glassfish (Application Server Platform Edition 9.0 Beta (JAX-WSA only), and Tomcat 5.0 for JWSDP:

What's New in Java WSDP 2.0?


DISTRIBUTION BY DEVELOPERS. Subject to the terms and conditions of the Software License Agreement and the obligations, restrictions, and exceptions set forth below, You may reproduce and distribute the portions of Software identified below ("Redistributable"), provided that:

  1. you distribute the Redistributable complete and unmodified and only bundled as part of Your applets and applications ("Programs"),
  2. your Programs add significant and primary functionality to the Software,
  3. you distribute Redistributable for the sole purpose of running your Programs,
  4. you do not distribute additional software intended to replace any component(s) of the Redistributable,
  5. you do not remove or alter any proprietary legends or notices contained in or on the Redistributable,
  6. you only distribute the Redistributable subject to a license agreement that protects Sun's interests consistent with the terms contained in the Software License Agreement, and
  7. you agree to defend and indemnify Sun and its licensors from and against any damages, costs, liabilities, settlement amounts and/or expenses (including attorneys' fees) incurred in connection with any claim, lawsuit or action by any third party that arises or results from the use or distribution of any and all Programs and/or Redistributable.

The following files are Redistributables:

Redistributable Component Redistributable Files
JAXP jaxp-api.jar, dom.jar, sax.jar, xalan.jar, xercesImpl.jar
XML Digital Signature xmldsig.jar, xmlsec.jar
Fast Infoset FastInfoset.jar, dom.jar, sax.jar, jsr173_api.jar

Using JAXP 1.3.1_01 in Java WSDP 2.0 with J2SE 5.0

If you are using Java WSDP 2.0 with J2SE 5.0, you should be using the JAXP 1.3.1_01 JAR files from JWSDP 2.0, not the JAXP 1.3 JAR files from J2SE 5.0. Since the JAXP classes have been renamed to "com.sun..." in both JDK 5 and Java WSDP 2.0, we need to override the built-in classes. The APIs are the same (both are version 1.3) but version 1.3.1_01 implementation classes that ship with Java WSDP 2.0 include some bug fixes that are not included in the version 1.3 implementation classes that ship with J2SE 5.0.

Using Ant That Comes with Java WSDP on Linux

On Linux systems, even if you set your ANT_HOME and PATH environment variables to point to the version of Ant that is installed with the Java WSDP 2.0, when you run the Java WSDP's Ant scripts, your system will look in the /etc/ant.conf configuration file and execute the version of Ant that is configured there. In this case, the default entry is /usr/share/ant. If you want to use the version of ANT that is shipped with Java WSDP, comment out the line that configures Ant in the /etc/ant.conf configuration file and your ANT_HOME and PATH environment variable settings will be used.

Fast Infoset Is Turned Off By Default

Fast Infoset is turned off (content negotiation is set to none) by default in Java WSDP 2.0. See the Fast Infoset User's Manual for information about turning on content negotiation.

Environment Variables

The JAVA_HOME environment variable is set to point to the version of the J2SE SDK you specify during installation. If you change your J2SE SDK installation, you will need to edit your <JWSDP_HOME>\jwsdp-shared\bin\setenv.bat batch file or <JWSDP_HOME>/jwsdp-shared/bin/ and reset the JAVA_HOME environment variable.

All other custom system properties can be set in the file <JWSDP_HOME>/conf/ as follows:


You can override any of the properties in your file <JWSDP_HOME>/conf/ by using the -D... argument to any of the start scripts. For example,

Unix: -Dhttp.proxyHost=webcache -Dhttp.proxyPort=8080

Microsoft Windows: catalina -Dhttp.proxyHost=webcache -Dhttp.proxyPort=8080

Console Installation on J2SE 5.0.

If you are running a console installation on a remote system with J2SE 5.0, the installation will exit if the DISPLAY variable hasn't been set. Make sure that you set the DISPLAY variable before you start the console installation on a remote system.

Uninstalling Java WSDP 2.0

At some point, you may need to uninstall Java WSDP 2.0:

If you ran one of the integration scripts after you installed the Java WSDP, you must rerun the script using the revert.<container>.changes target before you uninstall the Java WSDP.

Known Issues

UDDI Registries Unavailable After January 12, 2006

The IBM, Microsoft and SAP public UDDI registries are shutting down as of January 12, 2006. The consequences for Java WSDP 2.0 are as follows:

  • The JAXR examples <JWSDP_HOME>/jaxr/samples/jaxr-publish and <JWSDP_HOME>/jaxr/samples/jaxr-query will not work. Other JAXR programs that use the public UDDI registries will not work, either.
  • The SAAJ example <JWSDP_HOME>/saaj/samples/uddiping will not work.

The Registry Server that was provided with Java WSDP 1.5 is a UDDI registry, and you can install this registry and run programs against it. Because Java WSDP 1.5 requires JDK 1.4.2, while Java WSDP 2.0 requires JDK 1.5 or above, you must install the Registry Server on a system other than the one where you install JWSDP 2.0.

To install the Registry Server, perform these steps:

  1. Download Java WSDP 1.5 from the following URL:

  2. Download JDK 1.4.2 from the following URL:

  3. Download Tomcat 5 for Java WSDP 1.5 from the following URL:

  4. Install JDK 1.4.2.
  5. Install Tomcat.
  6. Install a "Custom" Java WSDP 1.5 installation, specifying Tomcat as the container and Registry Server as the only component. (Several other components will also be installed: JAXB, JAXP, JAXR, and SAAJ.)
  7. Start Tomcat.

When you run programs against the Registry Server, specify the following values for the publish URL, the query URL, the username, and the password, wherever you set these properties:

  query URL: http://localhost:8080/RegistryServer/
  Publish.URL: http://localhost:8080/RegistryServer/
  User name: testuser
  User password: testuser

FastInfoset Documentation Doesn't Describe How to Set the ContentNegotiation Property for JAX-WS

Content negotiation can be enabled in two different ways:

In either case, both the property name and its value are identical. However, and in order to reflect the corresponding package structures, the property's name is not the same for JAX-RPC and JAX-WS. For JAX-RPC, the name of the property is com.sun.xml.rpc.client.ContentNegotiation and for JAX-WS it is In either case, the accepted property values are "none" (the default) and "pessimistic". See the Using Fast Infoset section in the FatsInfoset Users Manual for more information.

Problem with JPEG File Causes JAX-WS mime and mtom Examples to Fail

If the java.jpg files in the <jwsdp.home/jaxws/samples/mime/common_resources, <jwsdp.home/jaxws/samples/mime/common_resources, and <jwsdp.home/jaxws/samples/mtom-soap12/common_resources directories does not display, the examples will fail. Right-click on the following JPEG file and save it as java.jpg in the three directories.

FastInfoset Does Not Improve Performance in Some Cases

FastInfoset makes little or no impact when:

FastInfoset and EJB Web Services Endpoints Using Authentication in Application Server 8.1 2005Q2 UR2

There is a problem with authentication when FastInfoset is enabled and EJBs are used as WebService endpoints. This is because "EJBWebServiceDispatcher" is rejecting all the messages that are not of type "text/xml". As a result, applications using "EJB Webservices endpoints" may fail when FastInfoset is used.


Please send feedback on the Java Web Services Developer Pack to

Copyright 2005 Sun Microsystems, Inc. All rights reserved.