Frequently asked questions about Web services based on Web Services for J2EE

This topic presents frequently asked questions about Web services that are developed and implemented based on the Web Services for Java 2 platform, Enterprise Edition (J2EE) specification.

What IBM development tools work with Web Services for J2EE?

WebSphere Studio Application Developer V5.1 and the Assembly Toolkit V5.1 both support the use of Web Services for J2EE. The Application Assembly Tool, included with Websphere Application Server, and Websphere Studio Application Developer versions earlier than Version 5.01, do not support Web Services for J2EE.

Is Web Services for J2EE part of the J2EE specification?

Starting with WebSphere Application Server 5.0.2 the Web Services for J2EE V1.0 specification is an addition to J2EE 1.3. WebSphere Application Server V5.0.2 and 5.1 support the Web Services for J2EE V1.0. WebSphere Application Server 5.1.1 supports the Web Services for J2EE V1.1 specification. J2EE 1.4 requires support for Web Services for J2EE V1.1. There are minor differences between the J2EE 1.3 V(JSR-109 V1.0) and the J2EE 1.4 V(JSR-109 V1.1).

What is the relationship between Web Services for J2EE and the Web Service Invocation Framework (WSIF)?

Web Services for J2EE and WSIF represent two different programming models for accessing Web services. Web Services for J2EE is standard, Java-centric, and more statically bound to Web Services Description Language (WSDL) documents due to the use of generated stubs. WSIF directly models WSDL. WSIF is more suitable when dynamically interpreting WSDL.

[V5.1.1 and later]In V5.1.1, these two programming models are merged to create a programming model with support for non-SOAP protocol bindings and tools to produce WSDL documents with extended bindings. For more information see Invoking RMI-IIOP Web services using JAX-RPC.

What is the relationship between Apache SOAP 2.3 and Web Services for J2EE?

Apache SOAP shipped with WebSphere Application Server Versions 4.0 and 5.0. It continues to co-exist with Web Services for J2EE. Apache SOAP is a proprietary API and applications written for it are not portable to other SOAP implementations. Applications written for Web Services for J2EE should be portable to any vendor's implementation that supports Web Services for J2EE.

What is the relationship between the Apache Axis component of the Web services technology preview available with WebSphere Application Server 5.0 and Web Services for J2EE?

The current Web services technology leveraged the work that IBM contributed to the Apache Axis code base. The Web Services for J2EE support included with WebSphere Application Server 5.0.2, and continuing on into V5.1 and 5.1.1, is derived from Apache Axis, but has diverged and contains many IBM-specific features to enhance performance, scalability, reliability, interoperability, and integration with the WebSphere Application Server.

What standards does the Web Services for J2EE component of WebSphere Application Server support?

The following standards are supported by the Web Services for J2EE component of WebSphere Application Server Versions 5.0.2, 5.1 and 5.1.1:

Does Web Services for J2EE interoperate with other SOAP implementations, like .NET?

WebSphere Application Server V5.0.2, 5.1 and 5.1.1 support Web services that are consistent with the WS-I Basic Profile 1.0, and should interoperate with any other vendor conforming to this specification.

Why can I not use a Java bean to implement a SOAP Java Messaging Service (JMS) service?

The SOAP JMS support uses Message Driven Beans (MDB) to implement the JMS endpoint. MDBs can only be used in the EJB container and delegate to an enterprise bean. If you want to use a Java bean instead of an enterprise bean to implement the service endpoint, create a "facade" enterprise bean that delegates to the Java bean.

Does the SOAP JMS support interoperate with other vendors?

No. There is currently no specification for SOAP JMS, therefore each vendor chooses its own implementation technique.

How does two-way messaging with SOAP JMS work? Can it support multiple clients making simultaneous requests?

Before a client issues a two-way request, it creates a temporary JMS queue to receive the response. This temporary queue is specified as the replyTo destination in the outgoing JMS request message. After the server processes the request, it directs the response to the replyTo destination specified in the request message. The client deletes the temporary queue after the response has been received. The server is able to handle simultaneous requests from multiple clients since each incoming request message contains the destination to which the reply should be sent.

What version of HTTP does Web services engine support?

Prior to WebSphere Application Server V5.1.1, the Web services engine supports HTTP V1.0 for the outbound HTTP connection. In V5.1.1, the Web services engine supports HTTP V1.1 with limited features, including persistent connection, handling of "100 Continue" response and connection pooling.


Related tasks
Troubleshooting Web services based on Web Services for J2EE