Java Statxon-当autoPrimitive为true时,强制特定值为字符串

Java Statxon-当autoPrimitive为true时,强制特定值为字符串,java,json,xml,wso2,stax,Java,Json,Xml,Wso2,Stax,当使用StAXON将XML有效负载转换为JSON时,是否可以标记特定节点,以便在转换时它们不遵守autoPrimitive(true)属性 我有一些XML: <root> <foo>1234</foo> <!-- foo should always be String --> <bar>5678</bar> <!-- bar should always be Integer --> </ro

当使用StAXON将XML有效负载转换为JSON时,是否可以标记特定节点,以便在转换时它们不遵守
autoPrimitive(true)
属性

我有一些XML:

<root>
    <foo>1234</foo> <!-- foo should always be String -->
    <bar>5678</bar> <!-- bar should always be Integer -->
</root>
我知道在处理数组时,我可以使用XML处理指令
,因此是否可以使用类似的方法来确保XML中的某些节点不会自动转换为各自的基本类型?我遇到的问题是,
foo
bar
都根据其值转换为数字


作为参考,我尝试使用WSO2的ESB 4.9.0,它在处理XML->JSON和JSON->XML转换时使用StAXON库。

如果每个节点都应该以这种方式转换,则不可能对其进行标记。通过设置以下选项,可以全局禁用自动图元:

打开ESB_HOME/repository/conf/synapse.properties并设置

synapse.commons.json.json.output.autoPrimitive=false

好的,谢谢。如果我更改此设置,当我有一个值希望在JSON中始终为数字时会发生什么?例如,我的字段是ID,所以必须始终用数字表示。这是不可能的。如果设置此选项,则数字将始终转换为字符串。
synapse.commons.json.json.output.autoPrimitive=false