【问题标题】:Fill Soap-Request from XML从 XML 填充肥皂请求
【发布时间】:2014-09-12 10:04:01
【问题描述】:

我有以下问题:

我有一个包含数据的 XML 文件。我还有一个有效的 Soap-request-“模板”,我通过 java 中的 soapui 创建并引用了一个 WSDL 文件(我可以访问它)。效果很好。

现在我必须在 Soap 请求中填充 XML 文件中的数据,以便发送它。

XML 文件如下所示:

<?xml version="1.0" encoding="UTF-8"?><Person>
<job>
Consultant
</job>
<birthDate>
1999-01-01
</birthDate>
<surname>
Doe
</surname>
<schufaToken>

</schufaToken>
<prename>
John
</prename>
</Person>

请注意,属性 schufaToken 可以出现多次!

生成的Soap-“模板”如下所示:

<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:scor="http://www.ibm.com/rules/decisionservice/ScoringDemo/ScoringDemo" xmlns:par="http://www.ibm.com/rules/decisionservice/ScoringDemo/ScoringDemo/param" xmlns:demo="http://www.example.de/scoring/demo">
   <soapenv:Header/>
   <soapenv:Body>
      <scor:ScoringDemoRequest>
         <!--Optional:-->
         <scor:DecisionID>?</scor:DecisionID>
         <!--Zero or more repetitions:-->
         <scor:blacklist>?</scor:blacklist>
         <par:person>
            <person>
               <demo:prename>?</demo:prename>
               <demo:surname>?</demo:surname>
               <demo:birthDate>?</demo:birthDate>
               <demo:job>?</demo:job>
               <!--Zero or more repetitions:-->
               <demo:schufaToken>
                  <demo:code>?</demo:code>
                  <demo:status>?</demo:status>
                  <demo:score>?</demo:score>
               </demo:schufaToken>
            </person>
         </par:person>
      </scor:ScoringDemoRequest>
   </soapenv:Body>
</soapenv:Envelope>

我遇到的问题是 XML 文件不是静态的,而且看起来完全不同,并且可以具有完全不同的属性。

我如何存档,我将数​​据从 XML 文件复制到 java 中生成的“模板”而不知道节点名称或其他任何东西?

非常感谢!

【问题讨论】:

    标签: java xml web-services soap wsdl


    【解决方案1】:

    可能最简单的方法是使用 javax.xml.soap 包中允许您管理 SOAP 请求的 API。

    看看这个例子https://stackoverflow.com/a/15949858/3989318

    【讨论】:

      猜你喜欢
      • 2011-02-10
      • 1970-01-01
      • 2016-04-25
      • 2020-07-29
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多