小编pri*_*iti的帖子

如何创建SOAP UI项目并在Java中运行请求

我想创建一个Java类,它将执行以下操作
1.使用wsdl加载/创建SOAPUI项目.
2.对该wsdl中的操作运行请求.

这是我的SoapJavaTest.java文件(尽管这还不完整,它只是在SOAP UI中注册一个项目并打印其中包含的操作)

public class SoapJavaTest{
    public static void main(String args[]) throws Exception{
        String projectFile ="SoapUIJavaTest\\SoapUIProjects\\soapui-project1.xml";
        WsdlProject project = new WsdlProject (projectFile);
        //WsdlProject project = new WsdlProject();
        WsdlInterface[] wsdls = WsdlImporter.importWsdl(project, "http://metalmaker.net/metalmaker.asmx?WSDL");
        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));
            }
        }

    }
Run Code Online (Sandbox Code Playgroud)

我收到以下错误 - 'NoSuchMethodError:org.apache.xmlbeans.XmlBeans.typeSystemForClassLoader(Ljava/lang/ClassLoader; Ljava/lang/String;)Lorg/apache/xmlbeans/SchemaTypeSystem;'.

我已经包含了以下jar文件1. commons-cli-1.2
2. commons-httpclient-3.1
3. log4j
4. soapui-3.6-beta2
5. soapui-xmlbeans-2.0.2
6. wsdl-xmlbeans-1.1
7. xbean -1.0.3
8. xmlbeans-xmlpublic-2.2.0
9. XmlSchema-1.0.3

我错过了什么jar文件,或者我使用的是错误的类?任何帮助,将不胜感激.

java soapui

8
推荐指数
2
解决办法
3万
查看次数

尝试通过Java设置用户名和密码向SOAP WsdlRequest提交请求时的ClientProtocolException

我的目的是使用给定的wsdl URL创建一个Soap UI项目,保存它并通过Java方法发送所有请求.org.apache.http.client.ClientProtocolException..... Caused by: org.apache.http.ProtocolException: Content-Length header already present当我尝试通过设置操作的用户名和密码来提交请求时,我收到错误.找到我的Java方法来发送请求.

public void runSoap() throws Exception
{
        String projectFile = "SoapUIProjects/TestProjectA-soapui-project.xml";
    SoapUI.setSoapUICore(new StandaloneSoapUICore(true));
    WsdlProject project = new WsdlProject(projectFile);

    int c = project.getInterfaceCount();
    System.out.println("The interface count   ="+c);

    for(int i=0;i<c;i++)
    {
        WsdlInterface wsdl = (WsdlInterface) project.getInterfaceAt(i);
        String soapVersion = wsdl.getSoapVersion().toString();
        int opc = wsdl.getOperationCount();
        String result="";

        for(int j=0;j<opc;j++)
        {
            WsdlOperation op = wsdl.getOperationAt(j);
                String opName = op.getName();
                System.out.println("OPERATION:"+opName);

                WsdlRequest req = op.getRequestByName("Req_"+soapVersion+"_"+opName);

                //Assigning correct u/p to an operation: Generate
                if(opName.equals("Generate"))
                { …
Run Code Online (Sandbox Code Playgroud)

java soapui

3
推荐指数
1
解决办法
2万
查看次数

标签 统计

java ×2

soapui ×2