【发布时间】:2012-03-27 07:10:58
【问题描述】:
我必须从我的 java 程序中进行 SOAP 调用,为此我使用了 apache 轴。 我的程序如下:
import org.apache.axis.client.Call;
import org.apache.axis.client.Service;
import javax.xml.rpc.ParameterMode;
import javax.xml.namespace.QName;
public class Project {
public static void main(String [] args) {
try {
String endpoint ="http://RequestUrl";
Service service = new Service();
Call call = (Call) service.createCall();
call.setTargetEndpointAddress( new java.net.URL(endpoint) );
call.setOperationName(new QName(endpoint, "getFrsFileData"));
String value = (String) call.invoke(new Object[] { "24BB7","frs1001" } );
System.out.println(value);
}
catch (Exception e) {
System.err.println(e.toString());
}
}
}
执行时会报如下错误
- 异常: org.xml.sax.SAXException:反序列化参数“getFrsFileDataReturn”:找不到类型 {http://Url}FrsFileSoapDO 的反序列化器 在 org.apache.axis.message.RPCHandler.onStartChild(RPCHandler.java:277) 在 org.apache.axis.encoding.DeserializationContext.startElement(DeserializationContext.java:1035) 在 org.apache.axis.message.SAX2EventRecorder.replay(SAX2EventRecorder.java:165) 在 org.apache.axis.message.MessageElement.publishToHandler(MessageElement.java:1141) 在 org.apache.axis.message.RPCElement.deserialize(RPCElement.java:345) 在 org.apache.axis.message.RPCElement.getParams(RPCElement.java:384) 在 org.apache.axis.client.Call.invoke(Call.java:2467) 在 org.apache.axis.client.Call.invoke(Call.java:2366) 在 org.apache.axis.client.Call.invoke(Call.java:1812) 在 Project.main(Project.java:33) org.xml.sax.SAXException:反序列化参数“getFrsFileDataReturn”:找不到类型 {http://Url}FrsFileSoapDO
的反序列化器
使用 SOAPUI 尝试了相同的调用,但它没有帮助我调试它。
请帮我调试这段java代码,
谢谢
【问题讨论】: