hi!
I am a newbie to Axis....so sorry if this is a pretty obvious fix.
I have defined a ws service and client that exchange an object that contains
two strings.
The service is invoked without a problem and the service executes and returns
without any fault being created. The problem is that the Java object after deserialization is
corrupted with the pair of strings each set to the same value...which is the 2nd string of the pair.
There is no fault or error signaled.
Axis Version 1.4 under Linux SuSe 10.1
--- The type (which I simplified because this appears in a larger example.
public class xxid
{
private String s1;
private String s2;
...sets and gets for the class.
}
---
It is invoked using an Axis call using the code from the user tutorial.
---
The service is pretty simple
public class example
{
public String useService(xxid xxidDetails)
{
return "s1 is = " + xxidDetails.getS1() +
" S2 = " + xxidDetails.getS2();
}
}
---
The WSDL is straightforward
<element name="xxiddetails">
<complexType>
<sequence>
<element name="s1" type="xsd:string"/>
<element name="s2" type="xsd:string"/>
</sequence>
</complexType>
</element>
---
and has a deployment descriptor (as per tutorial) with a service definition...
<service name="example" provider="java:RPC" use="literal" style="document">
<parameter name="className" value="org.simple.example"/>
<wsdlFile>/wsdl/example.wsdl</wsdlFile>
<parameter name="allowedMethods" value="*"/>
<typeMapping
type="java:org.simple.xxid"
qname="org.simple.xxid"
serializer="org.apache.axis.encoding.ser.BeanSerializerFactory
"
deserializer="org.apache.axis.encoding.ser.BeanDeserializerFactory"
encodingStyle=""
/>
</service>
----
The soap on the wire looks ok to me also....
----
<?xml version="1.0" encoding="UTF-8"?>
<soapenv:Envelope xmlns:soapenv="
http://schemas.xmlsoap.org/soap/envelope/
"
xmlns:xsd="http://www.w3.org/2001/XMLSchema
"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance
">
<soapenv:Body>
<useService xsi:type="org.simple.xxid" xmlns="">
<s1 xsi:type="xsd:string">First</s1>
<s2 xsi:type="xsd:string">second</s2>
</useService>
</soapenv:Body>
</soapenv:Envelope>
----
Anyone any thoughts as to what is the problem? (As I said the service is
invoked and executes correctly
it is just that the server end object value is corrupted.)
thanks...
TJ
- Incorrect setting of server side arguments John Thompson
-