axis 远程访问WSDL问题,求大神指导
客户端代码如下:String endpoint = url;
Service service = new Service();
Call call = (Call) service.createCall();
call.setTargetEndpointAddress(endpoint);
call.setOperationName("GETPAYMENTINFO");
call.addParameter("htbh",org.apache.axis.encoding.XMLType.XSD_STRING,javax.xml.rpc.ParameterMode.IN);
call.addParameter("bankcode",org.apache.axis.encoding.XMLType.XSD_STRING,javax.xml.rpc.ParameterMode.IN);
call.setReturnType(org.apache.axis.encoding.XMLType.XSD_STRING);
call.setUseSOAPAction(true);
call.setSOAPActionURI("http://tempuri.org/GETPAYMENTINFO");
call.setProperty(Call.ENCODINGSTYLE_URI_PROPERTY,
"http://tempuri.org/");
String htbh="201305210001";
String bankcode="C0001";
String result = (String) call.invoke(new Object []{htbh,bankcode});
RetMsg = result;
从截获的报文来看,能正常访问的报文与上面方法生成的报文区别
<soap:Body> //能正常的返回
<GETPAYMENTINFO xmlns="http://tempuri.org/">
<htbh>201305210001</htbh>
<bankcode>C0001</bankcode>
</GETPAYMENTINFO>
</soap:Body>
<soapenv:Body> //JAVA方法运行后,截获到的。服务端无法取到传参
<GETPAYMENTINFO soapenv:encodingStyle="http://tempuri.org/">
<htbh xsi:type="xsd:string">201305210001</htbh>
<bankcode xsi:type="xsd:string">C0001</bankcode>
</GETPAYMENTINFO>
用报文模拟器试验了在
<GETPAYMENTINFO soapenv:encodingStyle="http://tempuri.org/">
这段加 xmlns="http://tempuri.org/ 就可以正常返回了
现在需要在程序中修改,需要调整哪个参数?
</soapenv:Body> JAVA WSDL --------------------编程问答-------------------- 表示从来都是直接生成客户端代码的
补充:Java , Web 开发