xml – dp:在ibm datapower上序列化和转义

我有一个项目,我需要二进制64编码一个xml文件并将其放入另一个xml.为了实现这一点,我首先使用dp:serialize序列化xml,然后对结果变量使用dp:binary-encode.除了所有斯堪的纳维亚字符都被转义外,这种方法很好. åäö成为åäö当我解码结果.

有任何想法吗?我试过输出标签上的dp:escaping =“minimum”(xsl:output标签是否影响dp:serialize?)和其他一些选项.通过在二进制64编码之前打印序列化结果,我看到在调用dp:serialize时添加了转义.

是否有可能在没有逃避数据电源的情况下进行序列化?

最佳答案 我不认为你可以序列化而不逃避. DataPower转义,例如“disable-output-escaping”仅影响OUTPUT上下文而不影响“内联”
XML

我认为您必须将其作为二进制数据处理,并从/ object / message / node()获取“未触及”的XML文件.

由于二进制节点不是“xml”,您可以直接编码:

<xsl:variable name="xmlInBase64" select="dp:binary-encode(/object/message/node())"/>
点赞