3

xsi:nil="true"石鹸のリクエストがあります。どういう意味?どうすればそれに値を渡すことができますか?

どんな助けでも大歓迎です

4

2 に答える 2

3

NULLnillable 属性は、ほとんどのプログラミング言語と同様に、属性が存在するが値がないことを示します。

要素に値を割り当てたい場合は、それを行うことができますが、xsi:nil最初に属性を削除する必要があります。そうしないと、エラーが発生します。

于 2010-10-26T16:02:58.527 に答える
1

それを削除するには、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 にあります。

于 2012-12-26T05:59:07.327 に答える