XML到SOAP给出了错误的输出



我想从XML文件创建一个SOAP请求,但我确实得到了错误的输出。

我的输入XML:

<?xml version="1.0"?>
<ProDataSet xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
<vorh>
<vorh_num>30204009</vorh_num>
</vorh>
<vorh_vorr>
<vorr_num>6</vorr_num>
</vorh_vorr>
<vorr_pamt>
<arti_code>A69002275</arti_code>
<part_num>001I1903282356</part_num>
<pamt_aantal>1.0</pamt_aantal>
</vorr_pamt>
</ProDataSet>

我的XSLT:

<?xml version='1.0' ?>
<xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform">
<xsl:template match="/ProDataSet">
<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:q0="http://main.jws.com.hanel.de" xmlns:q1="http://main.jws.com.hanel.de/xsd" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:xsl="http://www.w3.org/2001/XMLSchema-instance">
<soapenv:Header/>
<soapenv:Body>
<q0:sendJobsReqV01>
<q0:param>
<q1:jobs>
<q1:jobNumber>
<xsl:value-of select="vorh/vorh_num"/>
</q1:jobNumber>
</q1:jobs>
</q0:param>
</q0:sendJobsReqV01>
</soapenv:Body>
</soapenv:Envelope>
</xsl:template>
</xsl:stylesheet>

这是我的输出:你看,它给出了一些XLS选择输出,但这需要是数字,而不仅仅是作为纯文本的选择

<?xml version="1.0" encoding="utf-8"?>
<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:q0="http://main.jws.com.hanel.de" xmlns:q1="http://main.jws.com.hanel.de/xsd" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:xsl="http://www.w3.org/2001/XMLSchema-instance">
<soapenv:Header />
<soapenv:Body>
<q0:sendJobsReqV01>
<q0:param>
<q1:jobs>
<q1:jobNumber>
<xsl:value-of select="vorh/vorh_num" />
</q1:jobNumber>
</q1:jobs>
</q0:param>
</q0:sendJobsReqV01>
</soapenv:Body>
</soapenv:Envelope>

希望大家理解,提前谢谢!

您在这里有一个拼写错误:

<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:q0="http://main.jws.com.hanel.de" xmlns:q1="http://main.jws.com.hanel.de/xsd" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:xsl="http://www.w3.org/2001/XMLSchema-instance">

您已将xsl前缀重新声明为xmlns:xsl="http://www.w3.org/2001/XMLSchema-instance"。我认为应该是:xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"

最新更新