Oracleデータベースにストアドプロシージャがあります。このストアード・プロシージャーはCLOBタイプを返します。このCLOBタイプには、埋め込みxmlが含まれています。DBlookup Mediatorを使用して、次のようにこのストアドプロシージャを呼び出します。
<dblookup>
<connection>
<pool>
<dsName>XeDS</dsName>
</pool>
</connection>
<statement>
<sql>select pkg_ws_sol_cursos.fu_listado_cursos(?,?) as resultado from dual</sql>
<parameter xmlns:xs="http://www.example.es" expression="//xs:HASH" type="VARCHAR" />
<parameter xmlns:xs="http://www.example.es" expression="//xs:PV2_I_LANGISO" type="VARCHAR" />
<result name="resultado_p" column="resultado" />
</statement>
</dblookup>
ストアドプロシージャによって返された値を含むプロパティ"resultado_p"の値を取得すると、この値が正しくないことがわかります。戻り値は、埋め込まれたxmlを含む文字列である必要がありますが、そうではありません。戻り値は次のような文字列です。oracle.sql.CLOB@423435435435これはoracle.sql.CLOBjavaタイプのtoStringメソッドを実行した結果だと思いますが、CLOBの内容を取得する必要があります。 toStringの結果。
誰かがCLOBタイプを返すストアドプロシージャを呼び出しましたか?
ありがとうございました。