Skip to Main Content

Java EE (Java Enterprise Edition) General Discussion

Announcement

For appeals, questions and feedback about Oracle Forums, please email oracle-forums-moderators_us@oracle.com. Technical questions should be asked in the appropriate category. Thank you!

Interested in getting your voice heard by members of the Developer Marketing team at Oracle? Check out this post for AppDev or this post for AI focus group information.

Call Java 6 web service using AXIS 1.4, Endpoint use HTTP/1.0

843833Apr 12 2007 — edited Apr 13 2007
Hi,

I am trying to use the new Java 6 feature that easily allows to create a web service and make it availabe for clients just by adding the WebService annotation to a class.

The web service works fine with the generic web service client provided in the Rational Application Developer 6 and RAD 7. When using classes generated with axis 1.4 the client hangs until some sort of timeout occurs. I sniffed the connection with ethereal and found out that the client seems to wait for additional data even after the server has sent the whole content of the response.

I think that the problem is related to the problem described here

http://mail-archives.apache.org/mod_mbox/ws-axis-user/200302.mbox/%3CD54BF26DB5A7D511B36B00508B9596A40371FB4E@sdgcaexch2.peregrine.com%3E

[...]
begin an HTTP 1.1 session with a non-Axis SOAP server which supports
Keep-Alive, the result is a hang in the Axis client during receipt of
the first response, caused by Xerces trying to read more bytes than
are available from the SocketInputStream it is given as it's input
source. Axis clients seem to depend on the other server closing the
connection to prevent this hang.
[...]

So this is an axis problem. Axis makes an HTTP/1.0 call and the Java web service responds using HTTP/1.1. Finding a way to make axis use HTTP 1.1 requests might be a solution but on the other hand the generated web service ignores that the client uses HTTP/1.0. So my question is:

Is there an easy way to make the generated Java 6 Web Service use HTTP/1.0 when responding to a HTTP/1.0 client?

Unfortunately upgrading to the next version of axis is not possible because the client side is restricted to java 1.3. Generated web service client code in RAD 6 (which possibly uses axis under the hood?) hangs too.

Thank you very much.

Florian
Comments
Locked Post
New comments cannot be posted to this locked post.
Post Details
Locked on May 11 2007
Added on Apr 12 2007
1 comment
877 views