xsi:nil="true"
石鹸のリクエストがあります。どういう意味?どうすればそれに値を渡すことができますか?
どんな助けでも大歓迎です
NULL
nillable 属性は、ほとんどのプログラミング言語と同様に、属性が存在するが値がないことを示します。
要素に値を割り当てたい場合は、それを行うことができますが、xsi:nil
最初に属性を削除する必要があります。そうしないと、エラーが発生します。
それを削除するには、Soap::Data オブジェクトの値を undef ではなく arrayref に設定します。キーとして Field1 があるとすると、Soap Data オブジェクトは次のようになります。
*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 にあります。