我遇到了一个问题。
下面的XML是使用Oracle BPEL流程生成的
<gdspCreateVpnNumberList xmlns:ws="http://ws.abc.com/" xmlns="http://ws.abc.com/">
<ws:numberListName>SampleList105</ws:numberListName>
<ws:numberListDesc>Desc</ws:numberListDesc>
<ws:selectedCustomerId>200</ws:selectedCustomerId>
<ws:numbersList>
<ws:number>21</ws:number>
</ws:numbersList>
</gdspCreateVpnNumberList>
我已在xslt下方应用以达到上述所需输入:
<xsl:stylesheet version="1.0"
xmlns:xsl="http://www.w3.org/1999/XSL/Transform"
xmlns:ws="http://ws.abc.com/">
<xsl:output omit-xml-declaration="yes" indent="yes"/>
<xsl:template match="*">
<xsl:element name="ws:{local-name(.)}"
namespace="http://ws.abc.com/">
<xsl:apply-templates />
</xsl:element>
</xsl:template>
</xsl:stylesheet>
但是,我无法生成我需要的实际请求:
<ws:gdspCreateVpnNumberList xmlns:ws="http://ws.abc.com/">
<numberListName>SampleList105</ws:numberListName>
<numberListDesc>Desc</ws:numberListDesc>
<selectedCustomerId>200</ws:selectedCustomerId>
<numbersList>
<number>21</ws:number>
</numbersList>
</ws:gdspCreateVpnNumberList>
输出:
<gdspCreateVpnNumberListResponse xmlns:msgns="http://ws.abc.com/" xmlns="http://ws.abc.com/">
<return xmlns="">
<returnCode>
<majorReturnCode>100</majorReturnCode>
<minorReturnCode>7042</minorReturnCode>
</returnCode>
</return>
</gdspCreateVpnNumberListResponse>
真的很感谢你对此的帮助......
此致 ANKIT
答案 0 :(得分:0)
您请求的输出对于所有元素看起来都很奇怪,除了第一个在非命名空间中,但这会生成:
结果:
<ws:gdspCreateVpnNumberList xmlns:ws="http://ws.abc.com/">
<numberListName>SampleList105</numberListName>
<numberListDesc>Desc</numberListDesc>
<selectedCustomerId>200</selectedCustomerId>
<numbersList>
<number>21</number>
</numbersList>
</ws:gdspCreateVpnNumberList>
的xsl:
<xsl:stylesheet version="1.0"
xmlns:xsl="http://www.w3.org/1999/XSL/Transform"
xmlns:ws="http://ws.abc.com/">
<xsl:output omit-xml-declaration="yes" indent="yes"/>
<xsl:strip-space elements="*"/>
<xsl:template match="/*">
<xsl:element name="ws:{local-name(.)}"
namespace="http://ws.abc.com/">
<xsl:apply-templates />
</xsl:element>
</xsl:template>
<xsl:template match="*">
<xsl:element name="{local-name(.)}">
<xsl:apply-templates />
</xsl:element>
</xsl:template>
</xsl:stylesheet>