Ono problem s velkymi spravami nemame.
Ak je velka sprava poslana z JAVY tak v PLSQL pri dequeue sa da precitat cela pre GET_TEXT (v_clob_type)
Problem je s kratkymi spravami.
Zatial co ak je kratka sprava poslana do queue z PLSQL da sa vytiahnut do CLOBU cez GET_TEXT (v_clob_type)
ale ak je poslana z JAVY GET_TEXT (v_clob_type) vracia NULL
ale GET_TEXT (v_varchar2_type) pekne nacita obsah spravy.

Ja tipujem ze to bude nejaky bug bud v databaze, alebo v ojms oracle jarku.

Roman




On 04.11.2010 16:46, Radovana Straube wrote:
Dobry den,

asi pre dvomi rokmi som mala podobny problem. Pomohla nasledovna property:
SetBigStringTryClob=true

S pozdravom
Radovana Straube

--- On Wed, 11/3/10, Roman Hrivik<[email protected]>  wrote:

From: Roman Hrivik<[email protected]>
Subject: Oracle AQ dequeue problem
To: "Java"<[email protected]>
Date: Wednesday, November 3, 2010, 2:33 PM
Ahojte,

riesim taky maly problem.
Z j2ee aplikacie posielam textovu JMS do Oracle AQ
(sys.aq$_jms_text_message)
Aplikacia je deploynuta na Oracle aplikacnom serveri
Oracle AS 10.1.3.4
Java VM 1.5

Queue je na aplikaci nakonfigurovana cez OJMS resource
adapter - autowrap
Nevyuzivam ziadne specialne volania original Oracle AQ JMS
drivera - ten je iba na pozadi prostrednictvom resource
adaptera.

v PLSQL casti pri dequeue volaju nasi chalani get_text(CLOB
payload)

Ako som si precital oracle AQ interne uklada vsetko ako
text_lob
a podla toho ci sa zavola get_text(varchar2 payload) alebo
get_text(clob payload)
internu reprezentaciu konvertuje na prislusny payload.

To sa vsak v nasom pripade nedeje podla ocakavania.

Napr. V pripade velkej spravy get_text(clob) zafunguje tak
ako ma.
V pripade kratkej spravy get_text(clob) vrati NULL
ale get_text(varchar2) vrati spravne ocakavany text.

Ak sa z PLSQL casti posle do queue kratky text tak ten
nasledne je mozno vytiahnut cez get_text(clob) spravne do
clobu - to jest funguje to spravne aj pri kratkych
spravach.
Taketo cudne spravanie je len pri spravach posielanych z
JAVY.

Vedel by mi niekto poradit, alebo uz mal podobnu skusenost
?

Dakujem

Roman





Odpovedet emailem