gpt4 book ai didi

xml - 在 ttransform 消息之后,mule 3.8.4 中的命名空间正在从父标记更改为子标记

转载 作者:行者123 更新时间:2023-12-04 17:05:42 26 4
gpt4 key购买 nike

我在 mule 中遇到命名空间问题。假设我有一个下面的 xml,它通过转换消息组件后,命名空间正在从父标记更改为子标记。如果我的消息必须保持原样,我该怎么办

Input:
```
**<root>
<abc xmlns:xsi="http://www.w3.org/.." xsi:type="q1:asdf" xmlns:q1="http://www.asd.com/asd/length" >
<q1:key>aaa</q1:key>
</abc>
</root>
```

Output:
```
<root>
<abc xsi:type="q1:asdf" >
<q1:key xmlns:q1="http://www.asd.com/asd/length">aaa</q1:key>
</abc>
</root>**

```

Here in `<abc xsi:type="q1:asdf">` the q1 namespace declaration moved to child tag key. For which I am getting error? can you please help how to retain the message as it is. And one more thing there is no guarantee that i get the same input message always, it changes dynamically. Only for this input I am getting issue.

最佳答案

使用 DataWeave 语言实现的 Transform Message 组件在第一次使用元素时输出命名空间定义。这完全符合标准,不会对任何标准解析器造成任何问题。如果要在父元素中发出命名空间,则必须创建一个在该元素中使用它的虚拟属性(即 @(q1#dummy: ''))。
我不确定 xsi:type="q1:asdf"实际上需要定义在相同的使用级别。
如果您在处理该输出时出错,则没关系。如果由于某些其他应用程序需要父级中的命名空间而出现错误,那么这似乎是该应用程序的 XML 解析器的错误。唯一可能是错误的情况是 xsi:type导致一些错误,因为它缺少命名空间。

关于xml - 在 ttransform 消息之后,mule 3.8.4 中的命名空间正在从父标记更改为子标记,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/63822528/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com