Title: Client param NS problem

Hey list,
  I think I've found a bug in the client implementation of Axis Beta 3. (I know, I should submit this to Bugzilla, but I don't want to spend time messing with it on the company clock. Sorry)

It appears that the client does not set the namespace of the request parameters properly. Here is a partial capture of the SOAP request being sent:

 <soapenv:Body>
  <ns1:GetRolledUpCPETemplate xmlns:ns1="http://www.qwest.com/abacus/">
   <templateId xsi:type="xsd:int">314637</templateId>
  </ns1:GetRolledUpCPETemplate>
 </soapenv:Body>

I think the problem is that the <templateId> tag needs to be in the ns1 namespace. When I modify the SOAP request like this it works.

 <soapenv:Body>
  <ns1:GetRolledUpCPETemplate xmlns:ns1="http://www.qwest.com/abacus/">
   <ns1:templateId xsi:type="xsd:int">314637</ns1:templateId>
  </ns1:GetRolledUpCPETemplate>
 </soapenv:Body>


The code snippet used to generate this call is listed below.
Service service = new Service();
Call call = (Call)service.createCall();
call.setTargetEndpointAddress(new java.net.URL(endpoint));
call.setOperationName(new QName("http://www.qwest.com/abacus/", "GetRolledUpCPETemplate"));
call.setUseSOAPAction(true);
call.setSOAPActionURI("http://www.qwest.com/abacus/GetRolledUpCPETemplate");
call.addParameter("templateId", new QName("http://www.qwest.com/abacus/", "int"), javax.xml.rpc.ParameterMode.IN);
call.setReturnType(new QName("http://www.qwest.com/abacus/", "GetRolledUpCPETemplateResult"), com.qwest.abacus.cpeQuoting.RolledUpTemplate);

call.setReturnClass(com.qwest.abacus.cpeQuoting.RolledUpTemplate.class);
RolledUpTemplate template = (RolledUpTemplate)call.invoke(new Object[] { new Integer(314637) });



I'd be happy to get full source, captures or anything else that would help, but I don't want to spam the mailing list with it.

Thanks for the great work Axis team,
BKR

Reply via email to