java使用原生soap调用webservice报错: 服务器未能识别 HTTP 头 SOAPAction 的值: .

2024-12-18 23:12:13
推荐回答(1个)
回答1:

/**
 * wsdl接口远程调用方法
 * @param url  接口地址
 * @param OperationName //需要调用的方法
 * @param xml //报文
 * @return 返回的报文
 */
public String getWSDLCall(String url, String OperationName, String xml){
String result = "";
try {
Service service = new Service();
Call call = (Call) service.createCall();
call.setTargetEndpointAddress(url);
call.setOperationName(OperationName);//WSDL里面描述的接口名称
call.addParameter("xml", org.apache.axis.encoding.XMLType.XSD_DATE,
javax.xml.rpc.ParameterMode.IN);//接口的参数
call.setReturnType(org.apache.axis.encoding.XMLType.XSD_STRING);//设置返回类型 
result = (String)call.invoke(new Object[]{xml});
} catch (Exception e) {
// TODO: handle exception
e.printStackTrace();
}
return result;
}