【问题标题】:How to retrieve Unknown XML from soap web service and insert into database using java如何从soap Web服务中检索未知XML并使用java插入数据库
【发布时间】:2020-03-24 16:22:09
【问题描述】:

我想使用 JAVA 检索 XML 响应(SOAP Web 服务)。 客户端将以 XML 格式发送请求,java 代码应该能够接收 XML 格式的响应。

一个XML的例子如下:

<soapenv:Envelope xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:web="WebService">
   <soapenv:Header/>
   <soapenv:Body>
      <web:SystemStatus soapenv:encodingStyle="http://schemas.xmlsoap.org/soap/encoding/">
         <order xsi:type="xsd:int">?</order>
      </web:SystemStatus>
   </soapenv:Body>
</soapenv:Envelope>

您能否建议使用 java 实现的步骤?

【问题讨论】:

    标签: java xml web-services soap


    【解决方案1】:

    如果你知道请求,可以使用java.net.HttpURLConnection

    String soapXml =   "";// your request_xml_in_question
    java.net.URL url = new java.net.URL("your_Service_url");
    HttpURLConnection conn = (HttpURLConnection) url.openConnection();
    
    
    // Set the necessary header fields
    conn.setRequestProperty("SOAPAction", "your_Service_url");
    conn.setDoOutput(true);
    
    
    // Send the request
    java.io.OutputStreamWriter wr = new java.io.OutputStreamWriter(conn.getOutputStream());
    wr.write(soapXml);
    wr.flush();
    
    
    // Read the response
    java.io.BufferedReader rd = new java.io.BufferedReader(new java.io.InputStreamReader(conn.getInputStream()));
    String line;
    while ((line = rd.readLine()) != null) { 
       System.out.println(line);
    }
    

    【讨论】:

    • 这个请求我不知道,有没有其他方法可以解析XML请求?
    • 我不明白请求未知?有一个方法,让调用者调用请求,或者从某个文件或任何地方读取它。
    • 基本上我想要使用 HTTP 请求和 HTTP 响应(HTTP Servlet)的肥皂网络服务。我想使用 SOAPUI 工具对其进行测试。如果客户端将 XML 作为请求发送,我将需要读取请求并且同样需要转储到数据库中。
    • 你不想用java?你想从某个文件中使用soapui工具中的客户端请求吗?
    • 我想使用 java servlet 读取请求的 XML 并将请求的 XML 转储到我的数据库中。有可能我们可以聊天,如果可以,请告诉我时间,我会上线。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2011-08-24
    • 1970-01-01
    • 1970-01-01
    • 2012-02-22
    • 2012-04-21
    • 2012-04-22
    • 2016-07-26
    相关资源
    最近更新 更多