nillable として宣言されたフィールドにはどのような XML を送信すればよいですか?
質問
クライアントから POST 経由で XML ドキュメントを受け取る REST スタイルのインターフェイスを備えたアプリケーションがあります。このアプリケーションは Java で書かれており、XML Bean を使用して投稿されたメッセージを処理します。
メッセージ内のフィールドの XML スキーマ定義は次のようになります。
<xs:element name="value" type="xs:string" nillable="true" />
この仕様を満たす null 値を送信するにはどうすればよいですか?
私は送った <value xsi:nil="true" />
しかし、これにより XML パーサーが中断されてしまいました。
解決
これは nil 値を送信する正しい方法です (デフォルトの名前空間と xsi
名前空間が正しい値に設定されている。つまり、 "http://www.w3.org/2001/XMLSchema-instance"
のために xsi
.) そのため、使用している CML パーサーのバグに遭遇した可能性があるようです。エラーメッセージは何ですか?
使ってみてはいかがでしょうか xsi:nil="1"
または、別の開始タグと終了タグを使用する (<value xsi:nil="true"></value>
) バグを回避してみてください。
他のヒント
どうですか <value xsi:nil="true"></value>
?それが何です 仕様では.
以前は、XML 要素が null だった場合、それらを含めないか、空にして送信することができました。そのため、あなたの場合は次のようになります。<value />
それを試してみましたか?
所属していません StackOverflow