无法使用XSLT映射以及XML AnonymizerBean更改命名空间前缀

2020-08-22 01:45发布

         点击此处--->   EasySAP.com群内免费提供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:CommonBasicComponents-2 cbc
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

         点击此处--->   EasySAP.com群内免费提供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:CommonBasicComponents-2 cbc
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

付费偷看设置
发送
6条回答
太Q了
1楼 · 2020-08-22 02:27.采纳回答
Nir深蓝
2楼-- · 2020-08-22 02:30

请附加示例XML。

天桥码农
3楼-- · 2020-08-22 02:19

samplexml.txt

大家好,

附加所需的示例输出xml。

致谢

Indumathi K

南山jay
4楼-- · 2020-08-22 02:20

嗨,Evegeniy,

当我尝试更改所有前缀时,在ExtensionContentPart ns3:命名空间中也会发生一些混乱。

输入:

<?xml版本=" 1.0"编码=" UTF-8"?>


PDF生成
1.0
< br>
NL3
2408ZE2
SCHULINKOPL
标准
REGULIER
12345



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


三十六小时_GS
5楼-- · 2020-08-22 02:07

prefixchangexsl.txt 输入 .txt

您好@ Evgeniy Kolmakov


附加了输入XML。 我有两个要求:1.从单个节点中删除名称空间。.2更改前缀名称。 我使用了随附的XSLT,但在更改前缀时删除了属性名称,如下所示。

EUR35.38

但应该是 如下所示,请您帮忙

35.38


关于

Indu

太Q了
6楼-- · 2020-08-22 02:32

嗨,Evgeniy,

谢谢。 我已经达到预期的目标XML格式。

此致

印度

一周热门 更多>