• Post Reply Bookmark Topic Watch Topic
  • New Topic
programming forums Java Mobile Certification Databases Caching Books Engineering Micro Controllers OS Languages Paradigms IDEs Build Tools Frameworks Application Servers Open Source This Site Careers Other Pie Elite all forums
this forum made possible by our volunteer staff, including ...
Marshals:
  • Campbell Ritchie
  • Jeanne Boyarsky
  • Ron McLeod
  • Paul Clapham
  • Liutauras Vilda
Sheriffs:
  • paul wheaton
  • Rob Spoor
  • Devaka Cooray
Saloon Keepers:
  • Stephan van Hulst
  • Tim Holloway
  • Carey Brown
  • Frits Walraven
  • Tim Moores
Bartenders:
  • Mikalai Zaikin

Weblogic temporary clob not getting written to or not reflecting text written to it.

 
Greenhorn
Posts: 6
  • Mark post as helpful
  • send pies
    Number of slices to send:
    Optional 'thank-you' note:
  • Quote
  • Report post to moderator

I've posted this on Oracle's web site but I thought I would already try here:

Problem: Unable to write to an empty clob

Weblogic version 8.1, SP unknown

Oracle JDBC version - 1.4

Current code to create CLOB:
Statement s = c.createStatement();
return CLOB.createTemporary(
((weblogic.jdbc.extensions.WLConnection)s.getConnection()).getVendorConnection(),true, CLOB.DURATION_SESSION);
OR
((weblogic.jdbc.extensions.WLConnection)s.getConnection()).getVendorConnection(),true, CLOB.MODE_READWRITE);

Data trying to write to CLOB:
MERGE INTO APPEAL_FINAL_STATUS TGT
USING (SELECT STATUS.APPEAL_FINAL_STATUS_SK
FROM APPEAL_FINAL APPEAL,
APPEAL_FINAL_STATUS STATUS
WHERE APPEAL.DECISION_BATCH_SK = :V_DECISION_BATCH_SK
AND STATUS.APPEAL_ID = APPEAL.APPEAL_ID
AND STATUS.DECISION_BATCH_SK = APPEAL.DECISION_BATCH_SK
AND STATUS.APPEAL_STATUS = 'IN REVIEW' AND
AND APPEAL.DUPLICATE_APPEAL_ID IS NOT NULL) SRC
ON (TGT.APPEAL_FINAL_STATUS_SK = SRC.APPEAL_FINAL_STATUS_SK)
WHEN MATCHED THEN UPDATE
SET TGT.APPEAL_STATUS = 'CLOSED DENIED'

Clob value before attempting to write: &    K?3  .
 ??????



Code resulting in Result 1:
Writer writer = clob.setCharacterStream(0L);
writer.write(String.valueOf(sqlText).toCharArray());
writer.flush();
writer.close();

Result 1: Clob value from code that I run using JBOSS that works but doesn't work in Weblogic as you can see: &    K?3  .
 ??????


Code resulting in Result 2:
char[] ch = new char[sqlText.length()];
System.out.println("char length - " + ch.length);

int ii = clob.putChars(1, ch);

Result 2:
char length - 619
clob value: &    K?3  .
 ??????
clob from putchars items written - 619(this is the value of ii from the clob.putChars(1, ch) from result 2 above.

Code resulting in Result 3:
StringReader sr = new StringReader(sqlText);
char[] bufr = new char[clob.getChunkSize()];
int charsRead = 0;

OutputStream os = clob.getAsciiOutputStream();

for(charsRead = sr.read(bufr); charsRead>-1; charsRead = sr.read(bufr)){
os.write(charsRead);
}

os.flush();
os.close();
sr.close();

Result 3:
clob value: &    K?3  .
 ??????

Code used to display clob:
Byte[] zz = clob.getBytes();
String xx = new String(zz);
System.out.println("clob value - " + xx);











 
reply
    Bookmark Topic Watch Topic
  • New Topic