Hi, I generated client artifacts from a WSDL file using wstools and I'm trying to consume a third-party web service. However the server seems to expect xsi:type attributes to be set in the request which the generated web service client doesn't do.
This is the fragment from the WSDL file: | <xsd:element name="login"> | <xsd:complexType> | <xsd:sequence> | <xsd:element name="username" type="xsd:string" maxOccurs="1" minOccurs="1"></xsd:element> | <xsd:element name="password" type="xsd:string" maxOccurs="1" minOccurs="1"></xsd:element> | </xsd:sequence> | </xsd:complexType> | </xsd:element> | The generated SOAP request looks as follows: | <env:Envelope xmlns:env='http://schemas.xmlsoap.org/soap/envelope/'> | <env:Header /> | <env:Body> | <ns1:login xmlns:ns1='http://testuri.org' xmlns:xsi='http://www.w3.org/2001/XMLSchema-instance'> | <username>TestUser</username> | <password>MySecretPassword</password> | </ns1:login> | </env:Body> | </env:Envelope> | This generates the following error message from the server: "server error. invalid method parameters" However , if I (manually, using a debugger in org.jboss.ws.soap.SOAPConnectionImpl.call()) change the request string to include xsi:type for the parameters, the request is successfully accepted by the server: | <env:Envelope xmlns:env='http://schemas.xmlsoap.org/soap/envelope/'> | <env:Header /> | <env:Body> | <ns1:login xmlns:ns1='http://testuri.org' xmlns:xsi='http://www.w3.org/2001/XMLSchema-instance'> | <username xsi:type="xsd:string">TestUser</username> | <password xsi:type="xsd:string">MySecretPassword</password> | </ns1:login> | </env:Body> | </env:Envelope> | How do I make JBossWS add the parameter types to the request? Thanks, Georges View the original post : http://www.jboss.com/index.html?module=bb&op=viewtopic&p=3976044#3976044 Reply to the post : http://www.jboss.com/index.html?module=bb&op=posting&mode=reply&p=3976044 _______________________________________________ jboss-user mailing list [email protected] https://lists.jboss.org/mailman/listinfo/jboss-user
