点击此处---> 群内免费提供SAP练习系统(在群公告中)
加入QQ群:457200227(SAP S4 HANA技术交流) 群内免费提供SAP练习系统(在群公告中)
大家好,
我面临着更改xml文件的名称空间前缀以产生所需输出的问题。 我在文件接收器通道中使用过XMLAnonymizer bean模块,并且在消息日志中看到"成功匿名化",但是传递的消息没有任何变化。 我尝试在OM中使用以下xslt代码来更改名称空间前缀,如下所示。 我看到在线工具已成功转换,但在ESR中出现以下错误。
- javax.xml.transform.TransformerException:java.lang.RuntimeException:前缀'ubl'的命名空间尚未声明。
ns0-> ubl
ns1-> ext
ns2-> cbc
ns4-> wknl
ns5-> cac
使用XSLT:
http://www.w3.org/1999/XSL/Transform"
xmlns:ns0 =" urn:oasis:names:specification:ubl:schema:xsd:Invoice-2"
xmlns:ns1 =" urn:oasis:names:specification:ubl:schema:xsd:CommonExtensionComponents- 2"
xmlns:ns2 =" urn:oasis:names:specification:ubl:schema:xsd:CommonBasicComponents-2"
xmlns:ns3 =" order2cash:i2d:ubl:ext:PdfGeneration"
xmlns :ns4 =" order2cash:i2d:wolskskluwer:ubl:ext:PdfGeneration"
xmlns:ns5 =" urn:oasis:names:specification:ubl:schema:xsd:CommonAggregateComponents-2"
xmlns:ubl =" urn:oasis:names:specification:ubl:schema:xsd:Invoice-2"
xmlns:ext =" urn:oasis:names:specification:ubl:schema:xsd:CommonExtensionComponents-2"
xmlns:cbc =" urn:oasis:names:specification:ubl:schema:xsd:CommonBasicComponents-2"
xmlns:wknl =" order2cash:i2d:wolterskluwer:ubl:ext:PdfGeneration"
xmlns:cac =" urn: 绿洲:名称:规范:ubl:模式:xsd:CommonAggregateComponents-2"
xmlns:xsi =" http://www.w3.org/2001/XMLSchema-instance "
xmlns :xs =" http://www.w3.org/2001/XMLSchema" exclude-result-prefixes =" ns0 ns1 ns2 ns4 ns5">
Anonymizer Bean中使用的参数:
anonymizer.acceptNamespaces
urn:oasis:names:specification:ubl:schema:xsd:Invoice-2 ubl
urn:oasis:names:specification:ubl:schema:xsd:CommonExtensionComponents-2 ext
urn:oasis:names:specification:ubl:schema:xsd:CommonAggregateComponents-2 cac
order2cash:i2d:ubl:ext:PdfGeneration''
order2cash:i2d:wolskskwer:ubl:ext:PdfGeneration wknl
anonymizer.quote'
请帮助我解决此要求。
关于
Indumathi K
嗨!
看看我在此线程中提供的XSL转换代码:
https://answers.sap.com/questions/13005115/replace-namespace-prefix- in-xml-using-xslt-mapping.html?childToView = 13003200#comment-13003200
Evgeniy。
请附加示例XML。
samplexml.txt
大家好,
附加所需的示例输出xml。
致谢
Indumathi K
嗨,Evegeniy,
当我尝试更改所有前缀时,在ExtensionContentPart ns3:命名空间中也会发生一些混乱。
输入:
<?xml版本=" 1.0"编码=" UTF-8"?>
PDF生成
1.0
< br>
NL3
2408ZE2
SCHULINKOPL
标准
REGULIER
12345
ns1:UBLExtensions>
XSLT:
http://www.w3.org/1999/XSL/Transform"
xmlns:ns0 =" urn:oasis:names:specification:ubl:schema:xsd:Invoice-2"
xmlns:ns1 =" urn:oasis:names:specification:ubl:schema:xsd:CommonExtensionComponents- 2"
xmlns:ns2 =" urn:oasis:names:specification:ubl:schema:xsd:CommonBasicComponents-2"
xmlns:ns4 =" order2cash:i2d:wolterskluwer:ubl:ext:PdfGeneration"
xmlns:ns5 =" urn:oasis:names:specification:ubl:schema:xsd:CommonAggregateComponents-2"
xmlns:ubl =" urn:oasis:names:specification:ubl:schema:xsd:Invoice-2"
xmlns:ext =" urn:oasis:names:specification:ubl:schema:xsd:CommonExtensionComponents-2"
xmlns:cbc =" urn:oasis:names:names:specification:ubl:schema:xsd:CommonBasicComponents- 2"
xmlns:wknl =" order2cash:i2d:wolterskluwer:ubl:ext:PdfGeneration"
xmlns:cac =" urn:oasis:names:names:specification:ubl:schema:xsd:CommonAggregateComponents-2"
xmlns:xsi =" http://www.w3.org/2001/ XMLSchema-instance "
xmlns:xs =" http://www.w3.org/2001/XMLSchema " exclude-result-prefixes =" ns0 ns1 ns2 ns4 ns5">
输出:
我在上一步中用其他xslt删除了ns3命名空间,因为我不想要它。 但是在上述xslt之后,该部分即将崩溃。 不知道出了什么问题。 任何指导将不胜感激。
<?xml版本=" 1.0"编码=" UTF-8"?>
PDF生成
1.0
NL32408ZE2 SCHULINKOPL
标准
REGULIER wknl:DealId xmlns:wknl =" order2cash:i2d:wolterskluwer:ubl:ext:PdfGeneration"> 12345
p>
prefixchangexsl.txt 输入 .txt
您好@ Evgeniy Kolmakov ,
附加了输入XML。 我有两个要求:1.从单个节点中删除名称空间。.2更改前缀名称。 我使用了随附的XSLT,但在更改前缀时删除了属性名称,如下所示。
但应该是 如下所示,请您帮忙
关于
Indu
嗨,Evgeniy,
谢谢。 我已经达到预期的目标XML格式。
此致
印度
一周热门 更多>