2

私は SOAP Web サービス クライアントの初心者で、クライアントの作成中にエラーが発生します。

これを解決するのを手伝ってください

//This is request that has to be send using SOAP Envelope

POST /DISWebService/DISWebService.asmx HTTP/1.1
Host: 192.168.2.119
Content-Type: application/soap+xml; charset=utf-8
Content-Length: length

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

Java コード

public static void main(String args[]) {
    try {
        // Create SOAP Connection
    SOAPConnectionFactory soapConnectionFactory = SOAPConnectionFactory      .newInstance();
    SOAPConnection soapConnection = soapConnectionFactory
                    .createConnection();

            String url = "http://192.168.2.119/VISWebService/VISWebService.asmx";
            // String url =
            // "http://192.168.2.119/DISWebService/DISWebService.asmx?op=LoginSystem";

            SOAPMessage soapResponse = soapConnection.call(createSOAPRequest(),url);

            // Process the SOAP Response
            printSOAPResponse(soapResponse);

            soapConnection.close();
        } catch (Exception e) {
            System.err
                    .println("Error occurred while sending SOAP Request to Server");
            e.printStackTrace();
        }
}

private static SOAPMessage createSOAPRequest() throws Exception {
        MessageFactory messageFactory = MessageFactory.newInstance();
        SOAPMessage soapMessage = messageFactory.createMessage();
        SOAPPart soapPart = soapMessage.getSOAPPart();


        String serverURI = "http://192.168.2.119/DISWebService/DISWebService.asmx";

        // SOAP Envelope
        SOAPEnvelope envelope = soapPart.getEnvelope();

        // SOAP Body
        SOAPBody soapBody = envelope.getBody();

        SOAPElement soapBodyElem = soapBody.addChildElement("LoginSystem");

        SOAPElement soapBodyElem1 = soapBodyElem.addChildElement("username");
        soapBodyElem1.addTextNode("Chirendu");

        SOAPElement soapBodyElem2 = soapBodyElem.addChildElement("password");
        soapBodyElem2.addTextNode("verve12*");

        MimeHeaders headers = soapMessage.getMimeHeaders();
        headers.addHeader("SOAPAction", serverURI );

        soapMessage.saveChanges();

        /* Print the request message */
        System.out.print("Request SOAP Message = ");
        soapMessage.writeTo(System.out);
        System.out.println();

        return soapMessage;
    }

クライアントの作成を手伝ってください。

4

1 に答える 1

3

2段階でデバッグすることをお勧めします

1) soapUIを使用して、応答があるかどうかを確認します。

2) mykongで使用した実例を使用してください

于 2013-10-28T19:43:18.483 に答える