对于声明为可空的字段,我应发送什么XML?

时间:2020-03-06 14:27:53  来源:igfitidea点击:

我有一个带有REST风格界面的应用程序,该界面通过POST从客户端获取XML文档。该应用程序是用Java编写的,并使用XML Bean处理发布的消息。

消息中字段的XML模式定义如下所示:

<xs:element name="value" type="xs:string" nillable="true" />

如何发送符合此规范的空值?

我发送了<value xsi:nil =" true" />`
但这导致XML分析器无法使用。

解决方案

那<value xsi:nil =" true"> </ value>`呢?这就是规范中的内容。

过去,当我拥有的XML元素为null时,我或者不能包含它们,或者将它们发送为空,因此,在情况下,它将是:
&lt;值/>

你有尝试过吗?

这是发送nil值的正确方法(假设默认名称空间和xsi名称空间设置为正确的值,即" http://www.w3.org/2001/XMLSchema-instance" xsi。),看来我们可能遇到了正在使用的CML解析器中的错误。错误消息是什么?

我们可以尝试使用xsi:nil =" 1"或者使用单独的打开和关闭标签(&lt;value xsi:nil =" true"> &lt;/ value>)来解决该错误。