我有一个带有REST样式界面的应用程序,它通过POST从客户端获取XML文档。此应用程序使用Java编写,并使用XML bean处理发布的消息。
消息中字段的XML模式定义如下所示:
<xs:element name="value" type="xs:string" nillable="true" />
如何发送符合此规范的空值?
我已发送<value xsi:nil="true" />
但是这导致了XML解析器barf。
答案 0 :(得分:15)
<value xsi:nil="true"></value>
怎么样?这就是in the spec。
答案 1 :(得分:1)
在过去,当我的XML元素为null时,我可以不包含它们或将它们发送为空,所以在你的情况下它会是:
<value />
你试过吗?
答案 2 :(得分:0)
这是发送nil值的正确方法(假设默认命名空间和xsi
命名空间设置为正确的值,即"http://www.w3.org/2001/XMLSchema-instance"
的{{1}}。)所以它看起来如此就像你可能遇到了你正在使用的CML解析器中的一个错误。什么是错误消息?
您可以尝试使用xsi
或使用单独的打开和关闭代码(xsi:nil="1"
)来尝试解决该错误。