XSI:nil = soap请求中的“ true”
题
我有 xsi:nil="true"
在我的肥皂要求中。这是什么意思?我该如何实现价值?
任何帮助都将受到赞赏
解决方案
要删除它,将soap ::数据对象设置为arrayref而不是undef。假设您将字段1作为键,那么肥皂数据对象看起来像:
*bless( {
'_name' => 'Field1',
'_signature' => [],
**'_value' => [
undef
],**
'_prefix' => 'm',
'_attr' => {
'id' => '1219615'
}
}, 'SOAP::Data' )*
由此产生的XML将是: <m:field1 xsi:nil = true ID =“ 1219615” /> 现在,如果将对象更改为:
*bless( {
'_name' => 'Field1',
'_signature' => [],
**'_value' => [],**
'_prefix' => 'm',
'_attr' => {
'id' => '1219615'
}
}, 'SOAP::Data' )*
您将获得所需的输出 <m:field1 id =“ 1219615” />. 。该解决方案在Perl中。
其他提示
nillable属性表明该属性的元素存在,但没有值,类似于 NULL
在大多数编程语言中。
如果要为元素分配一个值,则可以这样做,但是您必须删除 xsi:nil
首先属性,否则您会遇到错误。
不隶属于 StackOverflow