Java 从XML填充Soap请求

Java 从XML填充Soap请求,java,xml,web-services,soap,wsdl,Java,Xml,Web Services,Soap,Wsdl,我有以下问题: 我有一个包含数据的XML文件。我还有一个有效的Soap请求——“模板”,我通过java中的soapui参照WSDL文件创建它(我可以访问它)。那很好 现在我必须在Soap请求中填充XML文件中的数据,以便发送它 XML文件如下所示: <?xml version="1.0" encoding="UTF-8"?><Person> <job> Consultant </job> <birthDate> 1999-01-01 &

我有以下问题:

我有一个包含数据的XML文件。我还有一个有效的Soap请求——“模板”,我通过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>
<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>

顾问
1999-01-01
雌鹿
约翰
请注意,schufaToken属性可能出现多次

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

<?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>
<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中的generatet“template”中,而不知道节点名称或其他任何内容


多谢各位

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

看看这个例子