【发布时间】:2014-04-10 05:45:30
【问题描述】:
我需要为来自 wsdl 的一项操作创建 SOAP 请求 xml(使用 wsdl url)。我收到来自 Web 服务调用的响应。我需要从该响应中获取一些值并将其添加到另一个 Web 服务 Soap 请求并再次进行 Web 服务调用。因此,为了将新值添加到soap请求中,我需要获取完整的soap请求xml。这就是为什么我要问如何从wsdl获取soap请求xml。我不能使用SoapUI,因为它每次都是动态的,所以我需要写一个java代码。
我尝试使用类似于以下代码的内容:
WsdlProject project = new WsdlProject();
WsdlInterface[] wsdls = WsdlImporter.importWsdl(project, "<wsdl url>");
WsdlInterface wsdl = wsdls[0];
for (Operation operation : wsdl.getOperationList()) {
WsdlOperation op = (WsdlOperation) operation;
System.out.println("OP:"+op.getName());
System.out.println(op.createRequest(true));
System.out.println("Response:");
System.out.println(op.createResponse(true));
}
但我遇到了异常
java.lang.NoClassDefFoundError: org/fife/ui/rtextarea/RTextArea" in line "WsdlProject project = new WsdlProject();
我导入了最新的 jars (soapui-xmlbeans-4.5.0,wsdl-xmlbeans-1.1,soapui-4.5.0) 但仍然抛出异常。任何人都可以“http://www.soapui.org/repository/eviware/”建议我该如何纠正它?除了这个,我还有其他方法可以采取吗?
【问题讨论】:
标签: java xml web-services soap wsdl