我正在尝试将xml的值添加到xslt的属性中。尝试了各种解决方案,但没有一个工作。请参阅下面的XML和相应的XSLT代码。
XML:
<root>
<orderNo>123</orderNo>
</root>
XSLT:
<xsl:stylesheet version="1.0"
xmlns:xsl="http://www.w3.org/1999/XSL/Transform">
<xsl:output omit-xml-declaration="yes"/>
<xsl:template match="/">
<soapenv:Envelope xmlns:read="http:/xxxxxx"
xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/">
<soapenv:Header/>
<soapenv:Body>
<read:Shipment
orderNo="<xsl:select="/jsonToXML[@orderNo]"/>"
ShipNode="?">
</soapenv:Body>
</soapenv:Envelope>
</xsl:template>
</xsl:stylesheet>
尝试了各种解决方案,但没有一个正在发挥作用。
答案 0 :(得分:1)
尝试AVT ...
<read:Shipment orderNo="{root/orderNo}" ShipNode="?"/>
另请注意,AVT中的XPath已更改。没有jsonToXML
元素,orderNo
是元素,而不是属性。
答案 1 :(得分:-2)
你试过吗?
<xsl:value-of select="name/@orderNo" />