0 0

java call .net websercie 出现的问题10

求帮忙,
现在我需要连接一个https的.net webservice.

测试了webservice上的两个方法,一个方法有:一个输入参数,一个输出参数。
另外一个方法有:4个参数,2个输出参数

代码如下(调用4个参数的):

			   Service service = new Service();
			   Call call = (Call)service.createCall();
			   call.setTargetEndpointAddress(new java.net.URL("https://...../xxx.asmx?wsdl"));
			   call.setOperationName(new javax.xml.namespace.QName("http://.........","method1"));   
			   
			   System.setProperty("java.protocol.handler.pkgs","com.sun.net.ssl.internal.www.protocol");
			   System.setProperty("javax.net.ssl.trustStore","C:\\test.jks");
	   
			   call.addParameter(new javax.xml.namespace.QName("http://...........","param1"),XMLType.XSD_STRING, ParameterMode.IN);
			   call.addParameter(new javax.xml.namespace.QName("http://...........","param2"),XMLType.XSD_STRING, ParameterMode.IN);
			   call.addParameter(new javax.xml.namespace.QName("http://...........","param3"),XMLType.XSD_BOOLEAN, ParameterMode.IN);
			   call.addParameter(new javax.xml.namespace.QName("http://...........","param4"),XMLType.XSD_INT, ParameterMode.IN);

			   call.setUseSOAPAction(true);
			   call.setSOAPActionURI("http://.........");
			   
			   call.setReturnType(XMLType.XSD_STRING);
			   
			   String result = (String)call.invoke(new Object[]{param1,param1,param1,param1});
			   System.out.println(result);


出现的问题是:
同样是上面的方法,当调用只有一个输入输出参数的方法时,能够调用成功,并有返回值(这个说明:不存在security的问题,webservice也能正常连接上)。但是当调用多个参数的method时,会出现所需的参数没有传递的错误:
http://xml.apache.org/axis/}stackTrace:Server was unable to process request. ---> Procedure or function 'xxxxxx' expects parameter '@xxxxx', which was not supplied.

(web service的这个方法会用传入的参数调用一个存储过程)

请问这是什么情况?求帮助
2013年10月22日 18:04
目前还没有答案

相关推荐

Global site tag (gtag.js) - Google Analytics