ネイティブのOracleXMLDB Webサービスを使用しています(WebサービスでPL / SQL関数を使用)。null値を削除したい(出力に何も入れない(XML要素なし))。Oracle 11.2.0.1.0では動作しますが、Oracle11.2.0.3.0では動作しません。
明確にするために...PL/ SQLでWebサービスを利用したくないので、PL/SQLパッケージ/プロシージャ/関数をWebサービスとして公開したいと思います。
誰かが私を助けてくれることを願っています。ありがとうございました。
この例では、列「country」はnullです。
Oracle 11.2.0.1.0(これが私が欲しいものです):
<soap:Envelope xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/">
<soap:Body>
<GET_PERSONOutput xmlns="http://xmlns.oracle.com/orawsv/TESTSTUFF/GET_PERSON">
<RETURN>
<PERSON>
<PERSON_ID>3</PERSON_ID>
<FIRST_NAME>Harry</FIRST_NAME>
<LAST_NAME>Potter</LAST_NAME>
</PERSON>
</RETURN>
</GET_PERSONOutput>
</soap:Body>
</soap:Envelope>
Oracle 11.2.0.3.0:
<soap:Envelope xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/">
<soap:Body>
<GET_PERSONOutput xmlns="http://xmlns.oracle.com/orawsv/TESTSTUFF/GET_PERSON">
<RETURN>
<PERSON>
<PERSON_ID>3</PERSON_ID>
<FIRST_NAME>Harry</FIRST_NAME>
<LAST_NAME>Potter</LAST_NAME>
<COUNTRY/>
</PERSON>
</RETURN>
</GET_PERSONOutput>
</soap:Body>
</soap:Envelope>