【问题标题】:Example client request SOAP示例客户端请求 SOAP
【发布时间】:2011-12-12 17:20:34
【问题描述】:

我在服务器上部署了一个 HelloWorld Web 服务。现在我试图与服务器交谈。如何从 Java 应用程序中执行 SOAP 请求?

这是 XML 信封(请求):

            POST /AndroidSampleApp/Test.asmx HTTP/1.1
            Host: (host)
            Content-Type: text/xml; charset=utf-8
            Content-Length: length
            SOAPAction: "http://tempuri.org/HelloWorld"

            <?xml version="1.0" encoding="utf-8"?>
            <soap:Envelope xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/">
              <soap:Body>
                <HelloWorld xmlns="http://tempuri.org/">
                  <username>string</username>
                  <password>string</password>
                </HelloWorld>
              </soap:Body>
            </soap:Envelope>

这是 XML 信封(请求):

            HTTP/1.1 200 OK
            Content-Type: text/xml; charset=utf-8
            Content-Length: length

            <?xml version="1.0" encoding="utf-8"?>
            <soap:Envelope xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/">
              <soap:Body>
                <HelloWorldResponse xmlns="http://tempuri.org/">
                  <HelloWorldResult>string</HelloWorldResult>
                </HelloWorldResponse>
              </soap:Body>
            </soap:Envelope>

我如何从 java 程序调用这个 web 服务以及我需要导入哪些包。谢谢!

注意:这是针对安卓应用的

【问题讨论】:

    标签: java android web-services web-applications


    【解决方案1】:

    您可以使用ksoap2 库轻松地进行soap webservie 调用。

    Ksoap 相对易于使用,但我在使用它的某些网络上遇到了一些性能问题。

    相反,我一直在使用HttpUrlConnection(或AndroidHttpClient,具体取决于操作系统版本)。有关更多信息,请参阅此post。我将它们与 Android 上可用的任何 XML 解析器和构建器结合使用。

    希望这会有所帮助!

    【讨论】:

      【解决方案2】:

      如果您想在 Java 中调用它,那么一种方法是让 soapUI 为您生成一个客户端 jar。

      http://2mohitarora.blogspot.com/2010/11/how-to-generate-web-service-client-jar.html

      如果你使用的是Apache cxf,可以看看这篇文章如何生成客户端:

      http://logicsector.wordpress.com/2008/10/19/how-to-create-a-wsdl-first-soap-client-in-java-with-cxf-and-maven/

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2022-06-24
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多