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 J2EE specification.

 

What IBM development tools work with Web Services for J2EE?

WebSphere Studio Application Developer Version 5.1 and the Assembly Toolkit Version 5.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?

For WAS 5.0.2, the Web Services for J2EE Version 1.0 specification is an addition to J2EE 1.3. J2EE 1.4 requires support for Web Services for J2EE Version 1.1. There are minor differences between the J2EE 1.3 Version (JSR-109 Version 1.0) and the J2EE 1.4 Version (JSR-109 Version 1.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 WSDL documents due to the use of generated stubs. WSIF directly models WSDL. WSIF is more suitable when dynamically interpreting WSDL. WAS Version 6.0 leverages both technologies to achieve dynamic, high performing standards-based Web services implementations.

 

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 Web services technology preview leveraged the work that IBM contributed to the Apache Axis code base. The Web Services for J2EE support included with WAS 5.0.2 and Versin 5.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 WAS 5.0. support?

The following standards are supported by the Web Services for J2EE component of WebSphere Application Server 5.0...

 

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

WAS Version 5.0.2 and Version 5.1 support Web services that are consistent with the 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.

 

See Also

Troubleshooting Web services based on Web Services for J2EE