Contact Axis 1.1 Client with Axis2 Service

Is it possible for the Axis 1.1 client to communicate with the endpoint of the Axis2 web service? From my point of view, web services work by passing SOAP XML messages back and forth using the schema specified by the WSDL service, but I'm not sure if these versions of Axis use different versions of the web service specification that could stop them from talking. Any thoughts?

+4
source share
2 answers

Well, using Axis 1.1 to communicate with the Axis2 web service works just fine. I generated stubs using Axis 1.1, created a Client class and tested it. Axis 1.1 API The API does not offer the same functions as my previous Axis 1.4, in particular in the ParameterDesc class, where you can specify whether the parameters of the web service method are nillable or their minOccurs, but my calls seemed to work fine.

In general, this can be done using (however) the basic WSDL definitions, however, I'm not sure if Axis2 uses new features that Axis 1.1 cannot use due to the outdated Axis 1.1 API ..

Oh, and one final note, I needed to use SOAP 1.1 for my request. I am not 100% sure because my answers came back as SOAP 1.2, but there you have it.

+4
source

In general, your understanding is correct, i.e. that if the client adheres to the WSDL description, he should be able to contact the web service.
But Axis1 and Axis2 use different encodings by default, which are incompatible.
Axis1 uses RPC (which is deprecated), and Axis2 uses doc / lit.
Thus, unidentified from what you are asking for, that is, the Axis2 client interacting with the Axis1 server will not work.
For the reverse (and what you ask for in the post) I'm not sure. Have you tried to generate stubs using WSDL?
Do you have any errors? If you have no mistakes in creating stubs, I believe that you can try.

+1
source

Source: https://habr.com/ru/post/1343479/


All Articles