GT 4.0.1 Incremental Release Notes: Java WS Core

1. Introduction

These release notes are for the incremental release 4.0.1. It includes a summary of changes since 4.0.0, bug fixes since 4.0.0 and any known problems that still exist at the time of the 4.0.1 release. This page is in addition to the top-level 4.0.1 release notes at http://www.globus.org/toolkit/releasenotes/4.0.1.

For release notes about 4.0 (including feature summary, technology dependencies, etc) go to the Java WS Core 4.0 Release Notes.

2. Changes Summary

The following changes have occurred for Java WS Core:

  • globus-deploy-gar now supports -backup option to create a backup of existing service configuration files during deployment.
  • The standalone container when stopped by pressing Ctrl-C will now perform the same cleanup operation as when stopped using the globus-stop-container tool.
  • The local UDP ports used for sending out the usage statistics information in Java can now be controlled via the GLOBUS_UDP_SOURCE_PORT_RANGE environment variable.
  • Axis notification handling was improved to use a thread pool for firing notifications instead of starting a new thread for each notification. Also, the memory overhead associated with each notification was reduced.
  • The standalone container will now use ~/.globus/persisted/<ip>-<port>/ directory to store its persistent information. Under Tomcat the ~/.globus/persisted/<ip>-<webapp.name>/ directory will be used instead. This change enables to easily run multiple standalone containers as the same user on the same machine without any conflicts or to have multiple deployments of Java WS Core (as different web applications) in the same Tomcat installation.
  • Improved Tomcat deployment and support. Also, ContainerConfig.getBaseDirectory() and ContainerConfig.getSchemaDirectory() API were defined to return the appropriate directory locations depending on the container type. Also, auto flush functionality was added to the Tomcat HTTPS connector code to enable interoperability between a C client and Tomcat 5.0.x.
  • Proper WS-Addressing headers are now added to the SOAP Fault messages. Please see Bug 3614 for details.

3. Bug Fixes

The following bugs were fixed for Java WS Core:

  • Bug 2968: Globalization: Error in JUnit execution in the Japanese locale
  • Bug 3216: Tomcat deployment: copy container-log4j.properties file instead of log4j.properties
  • Bug 3217: Get the appropriate base directory location (in Tomcat or in the standalone container) without the need of MessageContext
  • Bug 3218: Tomcat deployment: copy libexec/ directory during the deployment
  • Bug 3250: ConcurrentModificationException during subscription
  • Bug 3257: Improvements to the globus-start-container-detached tool
  • Bug 3302: ReflectionResourceProperty inconsistent handling on remove on Array type
  • Bug 3418: Support for Ant 1.5.1
  • Bug 3466: Error creating persistent directories
  • Bug 3472: Secure Conversation Context creation is not thread safe
  • Bug 3473: ServiceAuthorizationChain bug in setPolicy node import missing
  • Bug 3492: org.globus.wsrf.tools.wsdl.GenerateBinding should use canonical paths for both the bindingFile and serviceFile
  • Bug 3532: Recovery thread dies in Tomcat
  • Bug 3545: NPE in usage statistics code breaks container
  • Bug 3582: globus-stop-container-detached exits with non-0 on successful exit
  • Bug 3600: ServerHost.getBaseURL() sometimes returns a wrong URL
  • Bug 3614: Missing WS-Addressing headers in fault messages and fault logging problems

4. Known Problems

The following problems and limitations are known to exist for Java WS Core at the time of the 4.0.1 release:

  • Limitations

    • WS-Notification support:

      • Only the Simple topic dialect is supported (others can be added)
      • Only flat topic spaces are supported (architecture does allow for more advanced structures)
      • Actions on the precondition, selector and policy fields in a subscription are not supported
      • When a resource is removed its subscriptions are not removed automatically
    • Only XPath resource property queries are supported (others can be added)
    • A resource might not get destroyed at the exact time as indicated by the scheduled termination time. A sweeper thread that removes expired resources runs periodically (every 1 minute by default) so an expired resource might not get removed until the next time the sweeper thread runs.
    • SOAP messages with attachments are not supported. In fact, the Axis version distributed with GT was compiled without attachment support.
    • In certain cases, the "dialect" attribute of TopicExpression or QueryExpression is not serialized properly as defined in the schema. An "org.globus.dialect.attr.qualified" Java system property was added to control how the serialization of the dialect attribute. Please see the Bug 3513 for details.
  • Known Bugs

    • Bug 2471: Message security signature verification issues
    • Bug 2445: Same input and output messages in WSDL confuse Axis
    • Bug 2921: Support for TerminationTimeChangeRejectedFault
    • Bug 2926: Local transport does not work without a current MessageContext
    • Bug 3113: Processing by the WSDLPreprocessor produces output different depending on the JVM
    • Bug 3482: wsa:From is not set correctly when service calls another service
    • Bug 3483: xsd:anyType not serialized correctly

5. For More Information

Click here for more information about this component.