簡體   English   中英

如何在Java中使用SoapUI生成示例SOAP請求

[英]How to generate example SOAP request with SoapUI in java

我想用Java編寫一些代碼,這將為給定的WSDL文件生成示例SOAP請求。 下面的代碼針對Web服務的每種操作執行此操作,但是代替了SOAP請求中的示例數據。 我有問號。 我不需要執行請求,而只需編寫此請求。 我知道這是可能的(就像在SoapUi中一樣),但我不知道該怎么做。

謝謝您的幫助。

最好的祝福。 盧卡斯

import com.eviware.soapui.impl.wsdl.*;
public class Main {
    public static void main(String[] args) {
        WsdlProject project = new WsdlProject();
        WsdlInterface[] wsdls = WsdlImporter.importWsdl(project, "sample.wsdl");
        WsdlInterface wsdl = wsdls[0];

        for (Operation operation : wsdl.getOperationList()) {
            WsdlOperation op = (WsdlOperation) operation;
            WsdlRequest request = op.addNewRequest("My Request");
            System.out.println("#" + op.getName() + "#\n" + op.createRequest(true));
        }
   }    
}

試試這個方法:

public String getRequestResult(String wsdl, String operationName)
        throws Exception {
    // create new project
    WsdlProjectPro project = new WsdlProjectPro();

    // import amazon wsdl
    WsdlInterface iface = WsdlInterfaceFactory.importWsdl(project, wsdl,
            true)[0];

    // get desired operation
    WsdlOperation operation = (WsdlOperation) iface
            .getOperationByName(operationName);

    // create a new empty request for that operation
    WsdlRequest request = operation.addNewRequest("Java Req");

    // generate the request content from the schema
    request.setRequestContent(operation.createRequest(true));

    // submit the request
    @SuppressWarnings("rawtypes")
    WsdlSubmit submit = (WsdlSubmit) request.submit(new WsdlSubmitContext(
            request), false);

    // wait for the response
    Response response = submit.getResponse();

    return response.getContentAsString();
}

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM