xsi:nil = "true” in soap request
質問
私は持っている xsi:nil="true"
私の石鹸のリクエストで。どういう意味?どうすればそれに値を渡すことができますか?
どんな助けも感謝しています
解決
削除するには、soap :: data object to arrayrefにundefの代わりに値を設定します。あなたがあなたのキーとしてfield1を持っているとしましょう、そして、石鹸データオブジェクトは次のようになります:
*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