如何使用PHP生成SOAP Web服务的XML请求,如SOAPUI请求

时间:2016-06-18 11:08:34

标签: php xml web-services wsdl soapui

我想创建一个PHP来自用户的WSDL和方法名称的应用,并生成一个SOAP请求,就像SOAPUI一样。

实际上我想创建应用程序,就像创建SOAPUI请求的XML一样,让用户编辑它并填充请求的参数。

我怎么能这样做?

2 个答案:

答案 0 :(得分:2)

我找到了一个解决方案:)

据我所知,PHP没有等效SOAPUI。 所以我发现@ API在@ satheesh-cheveri的帮助下在SOAPUI中有以下链接,并创建JAVA程序以使用它,然后调用JAVA应用程序在我的PHP应用程序中:

https://stackoverflow.com/a/20487079/1665693

我花了很长时间才找出需要导入的库,所以我在这里列出了所有需要的人:

  • Apache的httpcomponents-httpclient.jar
  • Apache的httpcomponents-httpcore.jar
  • Apache的XML-的xerces.jar
  • bcprov-jdk15-144.jar
  • 公地BeanUtils的-1.7.0.jar
  • 公地-CLI-1.3.1.jar
  • 共享记录-1.1.jar
  • 的junit-4.4.jar
  • 的log4j-1.2.8.jar
  • rsyntaxtextarea-1.4.1.jar
  • 的soapUI-4.5.0.jar
  • 的soapUI-的xmlbeans-4.5.0.jar
  • WSDL4J-1.6.2-fixed.jar
  • xbean-固定2.4.0.jar

这是我要求的功能:

public String generateSampleRequest(String wsdl, String method) {
    String result = "";
    try {
        WsdlProject project = new WsdlProject();
        WsdlInterface[] wsdls = WsdlImporter.importWsdl(project, wsdl);
        WsdlInterface ws = wsdls[0];
        WsdlOperation wsdlOperation = ws.getOperationByName(method);
        result = wsdlOperation.createRequest(true);
        ws.release();
        project.release();
    } catch (Exception e) {
        result = e.getMessage();
    }
    return result;
}

答案 1 :(得分:1)

您正在寻找Docker。更多信息doubleValue()

修改 我忘了添加here。谢谢SoapClient