如何检查从webservice调用传回的XML上的nil =“true”值?
问题描述:
我从包含nil="true"
一个web服务呼叫接收的xml:如何检查从webservice调用传回的XML上的nil =“true”值?
<cacheEntry>
<systemFK nil="true"/>
</cacheEntry>
我使用了Flex DataService的(web服务)向导创建用于cacheEntry
组件的服务对象。此对象稍后将在不同的Web服务调用中序列化并存储在数据库中。
我在服务对象中的set SystemFK
方法上设置了一个断点。看来传入的值是空字符串!
允许此值为空字符串将导致另一方面在Java中的web服务实现问题。由于数据库值为空,因此期望返回null,如果我避免设置此值,则serviceObject应发送一个空值,以使数据库开心。
我的问题是:如何检测XML文件中是否存在nil = true
以避免设置此值?
答
由于某些原因,ActionScript XML解析器不知道布尔值。没有看到为你生成的代码,我的猜测是,你得到的字符串是"true"
,而不是true
,这就是导致你的问题的原因。
对访问者进行更改,以使@nil
作为字符串来自XML,然后手动转换为布尔值。