Display clob?
How do I display the content out of a clob?
I just got some strange numbers like this...
oracle.jdbc.driver.OracleClobWriter@68693890
oracle.sql.CLOB@74b73890
How do I display the information in my clob and not the binary
output.
The code looks like...
// Set the clob values
Clob clob = ((OracleResultSet)rsResult).getClob
(19);
InputStream is_my_clob = clob.getAsciiStream();
byte first = (byte)(is_my_clob.read());
out.println( "FIRST BYTE: " + first + "<BR>");
Reader char_stream = clob.getCharacterStream();
char [] char_array = new char [10];
int chars_read = char_stream.read (char_array,
0, 10);
//Reader char_stream = clob.getCharacterStream();
//char [] char_array = new char [10];
//int chars_read = char_stream.read (char_array,
0, 10);
java.io.Writer writer;
// read data into a character array
char[] data =
{'0','1','2','3','4','5','6','7','8','9'};
// write the array of character data to a CLOB
writer = ((CLOB)clob).getCharacterOutputStream();
//writer.write(data);
out.println(writer + "<BR>");
out.println(clob + "<BR>");
out.println(chars_read);
writer.flush();
writer.close();
Please help me!
Hi ,
What you had been trying is like
CLOB clob = rset.getClob(19);
System.out.println(clob.toString());
To display a CLOB, first read the clob data into a StringBuffer
and then use it.
StringBuffer clobdata = new StringBuffer();
// Open the CLOB in READONLY mode
Reader clobReader = p_Clob.getCharacterStream();
// Get optimal buffer size
char[] charbuffer = new char[p_Clob.getBufferSize()];
// Read from the CLOB and write into the StringBuffer
while((bytesread=clobReader.read(charbuffer))!= -1)
clobdata.append(charbuffer,0,bytesread);
// Close the CLOB and Reader
// Use the CLOB data
clobdata.toString();
Regards
Elango
Similar Messages
-
Ora9i Rpt Dvlpr doesn't display clob in web report
I've got simple table with clob data:
CREATE TABLE TAB_CLOB (
ID NUMBER (12) NOT NULL,
CLASS VARCHAR2 (3) NOT NULL,
CONTENTS CLOB,
with some data.
Using SQL+ with this select:
select * from TABLE_CLOB
finds and displays data in all three columns.
Paper report with the same select formula displays number, char and clob data, but web report displays only number and char data - doesn't display clobs.
Suggestions?This was an issue with 9.0.2 base release and has been fixed in Reports patches. Please apply Report 9.0.2.0.5 integrated patch for the fix.
thanks
rohit -
Hello,
i have a requirement to display a CLOB data field of text more than 5000 char from a Oracle BI Publisher 10.1.3.4.0 version.
I can only display that field upto 4000 char using dbms_lob.substr(text_field, 4000, 1) but not able to display the entire CLOB field in my SQL query data template.
I'm getting the following error:
XML Parsing Error: not well-formed
Location: https://abc555.server.com/xmlpserver/servlet/xdo
Line Number 7, Column 1094:
Please guide how i can display CLOB fileds(text) in my report.
Thanks.Can any one please let me know if BI Publisher 10.1.3.4.0 can handle CLOB data(text) onto my new report.
I can only display upto 4000 char using dbms_lob.substr(clob_field, 4000,1).
Please help. -
Display CLOB field in Dashboard
I have a column type as CLOB in my database. I want to display contents of a that field in the Dashboard, How can I do so ?
On importing the column in the physical layer it maps the data-type to LONGVARCHAR(32768). It doesnot not display the contents on creating the reports, and even on casting to VARCHAR there is a limit upto 4000 characters.
So, how can I display?
thanks
RishabhThere are a couple of approaches that you can use. I have blogged about both the approaches here http://oraclebizint.wordpress.com/2007/11/12/oracle-bi-ee-101332-working-with-clob-fields/ and http://oraclebizint.wordpress.com/2007/12/10/oracle-bi-ee-101332-displaying-blob-images-using-plsql-gateway/. Though the 2nd blog entry is on BLOBs you can use the same concept to display clobs.
Thanks,
Venkat
http://oraclebizint.wordpress.com -
Problem displaying CLOB in text file
Hello All,
I have a problem displaying the content from the database in notepad. When I click on a link on my jsf screen, I retrieve the data and display it in notepad.
I have my text content stored in the database with CLOB datatype. When I look in the database the data looks in the following format:
---------STARTS FROM NEXT LINE-------------
The firm, known for its keen oversight of products, has been the subject of complaints from firms who have had apps blocked from the store. Some developers have complained that the company's rules seem inconsistent.
Some have found apps blocked after seemingly minor updates, or for having content deemed inappropriate by them. In light of this, and after careful consideration, I believe it is unnecessary to sign this measure at this time.
Sincerely,
ABC
----------ENDS IN THE PREVIOUS LINE------------
Now when I display this content onto the notepad, all the spaces and new line characters are lost, and the entire display looks awkward. This is how it looks:
The firm, known for its keen oversight of products, has been the subject of complaints from firms who have had apps blocked from the store. Some developers have complained that the company's rules seem inconsistent.[]Some have found apps blocked after seemingly minor updates, or for having content deemed inappropriate by them. In light of this, and after careful consideration, I believe it is unnecessary to sign this measure at this time.[]Sincerely,[]ABC
All the new line characters are lost and it just puts some junk character in place of a new line.
When I copy the same text onto textpad, everything is alright and it displays exactly the way it is present in the database. I am also open to display the content in html, but in HTML it doesn't even display me the junk character in place of new line. It is just one single string without any line separators.
I am using the following code to put the content into the text.
public String writeMessage(){
OutputStream outStream = null;
HttpServletResponse response = getServletResponseFromFacesContext();
Reader data = null;
Writer writer = null;
try{
response.reset();
response.setContentType("text/plain; charset=UTF-8");
response.setHeader("Content-Disposition","attachment; filename="+id+"_Message.txt");
outStream = response.getOutputStream();
QueryRemote remote = serviceLocator.getQueriessEJB();
data = remote.retrieveGovernorsVetoMessage(billId);
writer = new BufferedWriter(new OutputStreamWriter( outStream, "UTF-8" ) );
int charsRead;
char[] cbuf = new char[1024];
while ((charsRead = data.read(cbuf)) != -1) {
System.out.println(charsRead);
writer.write(cbuf, 0, charsRead);
writer.flush();
}catch(Exception ex){
ex.printStackTrace();
}finally{
//Close outStream, data, writer
facesContext.responseComplete();
return null;
}Any help or hints on resolving this issue would be highly appreciated.
Thanks.The data is imported from a third party application to my database. It doesn't display any newline characters when I view the data.
But when I do a regular expression search on text pad, I could see that my clob contains \n as the new line character. Is there a way to replace \n with \n\r while writing the data.
Thanks. -
Displaying CLOB column content with markup
I have a table with a CLOB type column, and I a using a n APEX form to input into this column using a Rich Text Editor.
When I save the text and then re-open it again with the Rich Text Editor in the form, the markup (bold, spacing, etc) has successfully been saved and retrieved.
I want to also create another page to show one record at a time (to users who I don't want to be able to edit the form), but I can't get the text to be displayed nicely with the markup.
I have tried using a dynamic PL/SQL region as well as an item within a HTML region, but it always displays without the markup.
How do I do this correctly?Hi, I know that I´m a kind of late in this discussion, but I faced a similar problem exactly in now days and in a way to show my grateful to this specific forum conversation that gave me the light I was needing, I want to share my solution here.
My Problem:
I have a customizable "Help" text that could be seen in some pages of the application. It is edit from a special Help Management page throw a Rich Text Editor and it is related to the corresponding page. When the final user opens the specific page, the text has to be shown as it was edited in the Rich Text Editor.
My solution came in this way:
*1. Create the Shortcut: "Help_Text"*
DECLARE
CURSOR C_Help IS
select Concat(Concat('<div class="textRegion">',Help_Text),'</div>')
from Help_by_Page_Table
where app_id = :app_id
and page_id = :app_page_id;
vHelp_Text CLOB;
BEGIN
OPEN C_Help;
FETCH C_Help INTO vAyuda_Rapida;
CLOSE C_Help;
RETURN vHelp_Text;
END;
*2. In the desire page: Create a HTML Region(with shorcuts)*
Region_Source:"Help_Text"
*3. Job is done!*
I just have to add that I´m using the Standard Theme: Productivity Applications, the class "textRegion" is part of the classes defined in this theme.
Edited by: Gustavo Bustos on Feb 27, 2013 12:21 PM
Edited by: Gustavo Bustos on Feb 27, 2013 12:25 PM -
How to display clob/blob in the web layout using Reports9i
Hi,
I've created a report that selects both a clob and blob datatype in the query. However, when I run the report using the 'Run Web Layout' tool no data is displayed for these columns. Does the <rw:field> tag support such datatypes ?.
Regards,
ChrisHi Chris,
Reports9i supports both BLOB and CLOB in both paper as well as web layout. Pl make sure that in the column properties that you want to display, you have selected the "File Format" correctly (to do this, go to data model > column > property inspector > file format). Eg, you can select "text", "image" etc depending on what you have stored in the column. Also, when you want to display an image in the web layout, you will have to write containsHtml="yes" inside your <re:field> tag.
Navneet. -
oracle.xml.sql.OracleXMLSQLException:
ORA-06502: PL/SQL: numeric or value error: character string buffer too small ORA-06512: at "SYS.DBMS_LOB", line 648 ORA-06512: at line 1
Trying to display an email message stored in a clob.
What the issue here and what the workaround?
TIA
RobSorry, it was a bit late :-)
OK using XSQL 1.0.4.3 and XSU that comes with it, database Oracle 8.1.7.1
CLOB is just under 70k
Using XSQL to read the CLOB with a simple
select CLOB_FIELD from MYTABLE then just display the xml as is.
Data seems OK, I can uses dbms_lob.substring() to display any part of the field in a sql tool and its OK.
Rob -
Can some one tell me is it possible to view a clob data with a simple select statement.I mean for non clob data type we can view the table by a simple select statement but for clob column type the data displayed is some junk.
Currently I have to run some java code to display the clob data colum,which sometimes becomes very irritating.
Please helpboost it with a p4 3.06Ghz HT....
no sorry i don't know... -
Problem in displaying CLOB data through procedure
Can anyone suggest me the stored procedure which will output CLOB data which is stored in table
SQL>Create table XMLDOC
(col1 number(11,0),col2 CLOB);
Thanks in AdvanceCreate the stored procedure with one OUT VARCHAR2 parameter,then select the CLOB column value from the
table into this OUT parameter and then display this
using DBMS_OUTPUT package.
Or by using bind variable of type VARCHAR2(4000) you
can print that value of clob column.
I think this will solve your problem. -
How can I display the entire contents of a clob, if I use sqlplus I can see only the first few lines.
When I try viewing the contents in a visual tool I get a message such as " lob not shown "
I also cant seem to get the contents displayed at all in code, using PHP.
Are there issues with displaying contents of a clob?
Thanksin sqlplus
set long some really big number (max 2GB)
set wrap on
set arraysize some small number
you may also need to play around with LONGC[HUNKSIZE] -
Display CLOB value in multiple rows in ADF UIX
Hi,
I have an ADF UIX application that uses data that are stored in a CLOB column in an Oracle Database.
The table data is presented in a simple table in page1.uix, I use BC4J for accessing the Database and Oracle JDeveloper 9.0.5.2.
The problem is that the CLOB data appear properly (meaning the rows appear OK) only in a frame (messageTextInput element) of a predefined size and if I change the element into a styledText or a formattedText the frame will not appear, but all the CLOB characters appear in a single row.
Does anyone know how I can present the CLOB text data in a UIX page, without having a frame around the text, and at the same time keep the CLOB text in multiple rows?There's no completely trivial way. You'd have to do a bit of extra processing of your CLOB data. The most straightforward work to do is to convert "\n" into "<br>", and then pass that into a <formattedText>.
-
Sql Developer 3.0.04 hangs displaying CLOB data
I have two different Oracle instances.
First is Oracle9i Enterprise Edition Release 9.2.0.5.0 - 64bit Production.
Second is Oracle Database 11g Release 11.2.0.1.0 - 64bit Production.
Data have been exported and imported in the newest instance. With the same client Sql lDeveloper 3.0.04, I run a query on the same table (in both instances) containing a CLOB column I have different behaviour.
In the Oracle 9 instance the query returns the right data.
In the Oracle 11 instance the query hangs without a result.
Do you have any idea about this behaviour?
Thanks, Silvio.Right, the query does not return any data.
1. Knowing that the query does not return any data, I got the dump just few seconds after I executed it.
2. I was opening the table with Object Viewer Data Tab.
below you will find a dump taken after 30 seconds I executed 'select * from .....' into SQL Worksheet with F5.
3. I am using the driver inside sql developer installation, I have Oracle 10g client installed but sa far as I know Sql Developer connect Oracle database by java driver.
4. I am running Sql Developer 3.1.06.44 with Java 1.6.0_11. For other purpose in my machine I have also Java 1.6.0_25.
Thank you for your replies.
Silvio.
at java.io.InputStreamReader.read(InputStreamReader.java:167)
at java.io.BufferedReader.fill(BufferedReader.java:136)
at java.io.BufferedReader.readLine(BufferedReader.java:299)
- locked <0x098753e8> (a java.io.InputStreamReader)
at java.io.BufferedReader.readLine(BufferedReader.java:362)
at oracle.dbtools.worksheet.commands.scriptrunner.task.ConsumerManagerTask.readLine(ConsumerManagerTask.java:70)
at oracle.dbtools.worksheet.commands.scriptrunner.task.ConsumerManagerTask.run(ConsumerManagerTask.java:52)
"Image Animator 3" daemon prio=4 tid=0x35f22800 nid=0x82c waiting on condition [0x3746f000..0x3746fc94]
java.lang.Thread.State: TIMED_WAITING (sleeping)
at java.lang.Thread.sleep(Native Method)
at sun.awt.image.GifFrame.dispose(GifImageDecoder.java:646)
at sun.awt.image.GifImageDecoder.readImage(GifImageDecoder.java:441)
at sun.awt.image.GifImageDecoder.produceImage(GifImageDecoder.java:195)
at sun.awt.image.InputStreamImageSource.doFetch(InputStreamImageSource.java:246)
at sun.awt.image.ImageFetcher.fetchloop(ImageFetcher.java:172)
at sun.awt.image.ImageFetcher.run(ImageFetcher.java:136)
"RaptorTask: Checking if Object is Editable.." prio=6 tid=0x359ca000 nid=0xc68 runnable [0x3776f000..0x3776fc14]
java.lang.Thread.State: RUNNABLE
at java.net.SocketInputStream.socketRead0(Native Method)
at java.net.SocketInputStream.read(SocketInputStream.java:129)
at oracle.net.ns.Packet.receive(Packet.java:283)
at oracle.net.ns.DataPacket.receive(DataPacket.java:103)
at oracle.net.ns.NetInputStream.getNextPacket(NetInputStream.java:230)
at oracle.net.ns.NetInputStream.read(NetInputStream.java:175)
at oracle.net.ns.NetInputStream.read(NetInputStream.java:100)
at oracle.net.ns.NetInputStream.read(NetInputStream.java:85)
at oracle.jdbc.driver.T4CSocketInputStreamWrapper.readNextPacket(T4CSocketInputStreamWrapper.java:123)
at oracle.jdbc.driver.T4CSocketInputStreamWrapper.read(T4CSocketInputStreamWrapper.java:79)
at oracle.jdbc.driver.T4CMAREngine.unmarshalUB1(T4CMAREngine.java:1122)
at oracle.jdbc.driver.T4CMAREngine.unmarshalSB1(T4CMAREngine.java:1099)
at oracle.jdbc.driver.T4CTTIfun.receive(T4CTTIfun.java:288)
at oracle.jdbc.driver.T4CTTIfun.doRPC(T4CTTIfun.java:191)
at oracle.jdbc.driver.T4C8Oall.doOALL(T4C8Oall.java:523)
at oracle.jdbc.driver.T4CPreparedStatement.doOall8(T4CPreparedStatement.java:207)
at oracle.jdbc.driver.T4CPreparedStatement.executeForRows(T4CPreparedStatement.java:1010)
at oracle.jdbc.driver.OracleStatement.executeMaybeDescribe(OracleStatement.java:1185)
at oracle.jdbc.driver.OracleStatement.doExecuteWithTimeout(OracleStatement.java:1275)
at oracle.jdbc.driver.OraclePreparedStatement.executeInternal(OraclePreparedStatement.java:3576)
at oracle.jdbc.driver.OraclePreparedStatement.executeQuery(OraclePreparedStatement.java:3620)
- locked <0x0893ef00> (a oracle.jdbc.driver.T4CConnection)
at oracle.jdbc.driver.OraclePreparedStatementWrapper.executeQuery(OraclePreparedStatementWrapper.java:1491)
at oracle.dbtools.raptor.newscriptrunner.SQL.executeQuery(SQL.java:356)
at oracle.dbtools.raptor.newscriptrunner.SQL.run(SQL.java:49)
at oracle.dbtools.raptor.newscriptrunner.ScriptRunner.runSQL(ScriptRunner.java:200)
at oracle.dbtools.raptor.newscriptrunner.ScriptRunner.run(ScriptRunner.java:140)
at oracle.dbtools.worksheet.commands.scriptrunner.task.executor.DefaultStatementExecutorTask.runMe(DefaultStatementExecutorTask.java:46)
at oracle.dbtools.worksheet.commands.scriptrunner.task.DBCommandRunnerTask.runTaskInThisThread(DBCommandRunnerTask.java:271)
at oracle.dbtools.worksheet.commands.scriptrunner.task.ScriptRunnerTask.tailoredRunCommand(ScriptRunnerTask.java:84)
at oracle.dbtools.worksheet.commands.scriptrunner.task.DBCommandRunnerTask.runCommand(DBCommandRunnerTask.java:324)
at oracle.dbtools.worksheet.commands.scriptrunner.task.DBCommandRunnerTask.loopThroughAllStatements(DBCommandRunnerTask.java:125)
at oracle.dbtools.worksheet.commands.scriptrunner.task.ScriptRunnerTask.handleNoSelection(ScriptRunnerTask.java:55)
at oracle.dbtools.worksheet.commands.scriptrunner.task.DBCommandRunnerTask.doWork(DBCommandRunnerTask.java:212)
at oracle.dbtools.worksheet.commands.scriptrunner.task.DBCommandRunnerTask.doWork(DBCommandRunnerTask.java:54)
at oracle.dbtools.raptor.backgroundTask.RaptorTask.call(RaptorTask.java:193)
at java.util.concurrent.FutureTask$Sync.innerRun(FutureTask.java:303)
at java.util.concurrent.FutureTask.run(FutureTask.java:138)
at oracle.dbtools.raptor.backgroundTask.RaptorTaskManager$RaptorFutureTask.run(RaptorTaskManager.java:515)
at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:441)
at java.util.concurrent.FutureTask$Sync.innerRun(FutureTask.java:303)
at java.util.concurrent.FutureTask.run(FutureTask.java:138)
at java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:886)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:908)
at java.lang.Thread.run(Thread.java:619)
"pool-4-thread-1" prio=6 tid=0x35cf9400 nid=0x6dc waiting on condition [0x37f7f000..0x37f7fc94]
java.lang.Thread.State: TIMED_WAITING (parking)
at sun.misc.Unsafe.park(Native Method)
- parking to wait for <0x08b17238> (a java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject)
at java.util.concurrent.locks.LockSupport.parkNanos(LockSupport.java:198)
at java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject.awaitNanos(AbstractQueuedSynchronizer.java:1963)
at java.util.concurrent.DelayQueue.take(DelayQueue.java:164)
at java.util.concurrent.ScheduledThreadPoolExecutor$DelayedWorkQueue.take(ScheduledThreadPoolExecutor.java:583)
at java.util.concurrent.ScheduledThreadPoolExecutor$DelayedWorkQueue.take(ScheduledThreadPoolExecutor.java:576)
at java.util.concurrent.ThreadPoolExecutor.getTask(ThreadPoolExecutor.java:947)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:907)
at java.lang.Thread.run(Thread.java:619)
"WeakDataReference polling" prio=2 tid=0x3599d800 nid=0xb48 in Object.wait() [0x3827f000..0x3827fd94]
java.lang.Thread.State: WAITING (on object monitor)
at java.lang.Object.wait(Native Method)
at java.lang.ref.ReferenceQueue.remove(ReferenceQueue.java:116)
- locked <0x08a2a7d8> (a java.lang.ref.ReferenceQueue$Lock)
at java.lang.ref.ReferenceQueue.remove(ReferenceQueue.java:132)
at oracle.ide.util.WeakDataReference$Cleaner.run(WeakDataReference.java:88)
at java.lang.Thread.run(Thread.java:619)
"Background Parser" prio=6 tid=0x35e76400 nid=0x634 waiting on condition [0x3807f000..0x3807fa94]
java.lang.Thread.State: TIMED_WAITING (sleeping)
at java.lang.Thread.sleep(Native Method)
at oracle.dbtools.raptor.plsql.BackgroundParser$1.construct(BackgroundParser.java:137)
at oracle.dbtools.raptor.utils.NamedSwingWorker$2.run(NamedSwingWorker.java:115)
at java.lang.Thread.run(Thread.java:619)
"IconOverlayTracker Timer" prio=6 tid=0x36227c00 nid=0x6ac in Object.wait() [0x3847f000..0x3847fa94]
java.lang.Thread.State: WAITING (on object monitor)
at java.lang.Object.wait(Native Method)
at java.lang.Object.wait(Object.java:485)
at java.util.TimerThread.mainLoop(Timer.java:483)
- locked <0x0884f900> (a java.util.TaskQueue)
at java.util.TimerThread.run(Timer.java:462)
"Timer queue for AWT thread" daemon prio=6 tid=0x36138800 nid=0x54c in Object.wait() [0x3817f000..0x3817fc94]
java.lang.Thread.State: WAITING (on object monitor)
at java.lang.Object.wait(Native Method)
- waiting on <0x081e06a0> (a java.lang.Object)
at java.lang.Object.wait(Object.java:485)
at ice.util.awt.TimedAWTExecutor.nextElem(TimedAWTExecutor.java:108)
- locked <0x081e06a0> (a java.lang.Object)
at ice.util.awt.TimedAWTExecutor.runScheduler(TimedAWTExecutor.java:130)
at ice.util.awt.TimedAWTExecutor$1.run(TimedAWTExecutor.java:19)
"WaitCursor-Timer" prio=6 tid=0x35e17c00 nid=0x880 in Object.wait() [0x37e7f000..0x37e7fa14]
java.lang.Thread.State: WAITING (on object monitor)
at java.lang.Object.wait(Native Method)
at java.lang.Object.wait(Object.java:485)
at java.util.TimerThread.mainLoop(Timer.java:483)
- locked <0x081791f8> (a java.util.TaskQueue)
at java.util.TimerThread.run(Timer.java:462)
"Native Directory Watcher" prio=2 tid=0x35745c00 nid=0xdd4 runnable [0x37d7f000..0x37d7fa94]
java.lang.Thread.State: RUNNABLE
at oracle.ide.natives.NativeHandler.enterWatcherThread(Native Method)
at oracle.ide.natives.NativeHandler$2.run(NativeHandler.java:252)
at java.lang.Thread.run(Thread.java:619)
"TextBufferScavenger" prio=6 tid=0x35bfc400 nid=0xfa8 in Object.wait() [0x37a7f000..0x37a7fc14]
java.lang.Thread.State: WAITING (on object monitor)
at java.lang.Object.wait(Native Method)
- waiting on <0x07478ef0> (a java.lang.ref.ReferenceQueue$Lock)
at java.lang.ref.ReferenceQueue.remove(ReferenceQueue.java:116)
- locked <0x07478ef0> (a java.lang.ref.ReferenceQueue$Lock)
at java.lang.ref.ReferenceQueue.remove(ReferenceQueue.java:132)
at oracle.ide.model.TextNode$FacadeBufferReference$PollingThread.run(TextNode.java:1949)
"Timer queue for AWT thread" daemon prio=6 tid=0x33807800 nid=0x9e4 in Object.wait() [0x3682f000..0x3682fd14]
java.lang.Thread.State: WAITING (on object monitor)
at java.lang.Object.wait(Native Method)
- waiting on <0x073cdba0> (a java.lang.Object)
at java.lang.Object.wait(Object.java:485)
at ice.util.awt.TimedAWTExecutor.nextElem(TimedAWTExecutor.java:108)
- locked <0x073cdba0> (a java.lang.Object)
at ice.util.awt.TimedAWTExecutor.runScheduler(TimedAWTExecutor.java:130)
at ice.util.awt.TimedAWTExecutor$1.run(TimedAWTExecutor.java:19)
"BaseTreeExplorer.NodeOpeningExecutor" prio=6 tid=0x35ba4800 nid=0xf50 waiting on condition [0x3797f000..0x3797fa14]
java.lang.Thread.State: WAITING (parking)
at sun.misc.Unsafe.park(Native Method)
- parking to wait for <0x06ff8058> (a java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject)
at java.util.concurrent.locks.LockSupport.park(LockSupport.java:158)
at java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject.await(AbstractQueuedSynchronizer.java:1925)
at java.util.concurrent.LinkedBlockingQueue.take(LinkedBlockingQueue.java:358)
at java.util.concurrent.ThreadPoolExecutor.getTask(ThreadPoolExecutor.java:947)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:907)
at java.lang.Thread.run(Thread.java:619)
"Scheduler" daemon prio=6 tid=0x35b43000 nid=0xdac in Object.wait() [0x3756f000..0x3756fb14]
java.lang.Thread.State: WAITING (on object monitor)
at java.lang.Object.wait(Native Method)
at java.lang.Object.wait(Object.java:485)
at oracle.dbtools.raptor.backgroundTask.TaskLinkedList.takeNextTask(TaskLinkedList.java:47)
- locked <0x06f3b4e0> (a oracle.dbtools.raptor.backgroundTask.TaskLinkedList)
at oracle.dbtools.raptor.backgroundTask.RaptorTaskManager$SchedulerThread.run(RaptorTaskManager.java:444)
"Thread-9" daemon prio=6 tid=0x35b67800 nid=0xecc in Object.wait() [0x36c6f000..0x36c6fc14]
java.lang.Thread.State: WAITING (on object monitor)
at java.lang.Object.wait(Native Method)
- waiting on <0x06f3b5d8> (a java.lang.ref.ReferenceQueue$Lock)
at java.lang.ref.ReferenceQueue.remove(ReferenceQueue.java:116)
- locked <0x06f3b5d8> (a java.lang.ref.ReferenceQueue$Lock)
at java.lang.ref.ReferenceQueue.remove(ReferenceQueue.java:132)
at org.tmatesoft.svn.core.javahl.SVNClientImplTracker.run(SVNClientImplTracker.java:65)
at java.lang.Thread.run(Thread.java:619)
"TimerQueue" daemon prio=6 tid=0x35b1b800 nid=0x76c in Object.wait() [0x3736f000..0x3736fc94]
java.lang.Thread.State: TIMED_WAITING (on object monitor)
at java.lang.Object.wait(Native Method)
at javax.swing.TimerQueue.postExpiredTimers(TimerQueue.java:218)
- locked <0x06dce7f0> (a javax.swing.TimerQueue)
at javax.swing.TimerQueue.run(TimerQueue.java:234)
- locked <0x06dce7f0> (a javax.swing.TimerQueue)
at java.lang.Thread.run(Thread.java:619)
"Thread-7" daemon prio=6 tid=0x35963c00 nid=0xd10 runnable [0x36d6f000..0x36d6fd94]
java.lang.Thread.State: RUNNABLE
at sun.print.Win32PrintServiceLookup.notifyPrinterChange(Native Method)
at sun.print.Win32PrintServiceLookup.access$100(Win32PrintServiceLookup.java:32)
at sun.print.Win32PrintServiceLookup$PrinterChangeListener.run(Win32PrintServiceLookup.java:302)
"ChangeSetService" prio=2 tid=0x35aa8400 nid=0xd0c in Object.wait() [0x36b6f000..0x36b6fa94]
java.lang.Thread.State: WAITING (on object monitor)
at java.lang.Object.wait(Native Method)
- waiting on <0x06bd18a0> (a oracle.jdevimpl.vcs.changeset.ChangeSetService)
at java.lang.Object.wait(Object.java:485)
at oracle.jdevimpl.vcs.changeset.ChangeSetService.awaitEvents(ChangeSetService.java:178)
- locked <0x06bd18a0> (a oracle.jdevimpl.vcs.changeset.ChangeSetService)
at oracle.jdevimpl.vcs.changeset.ChangeSetService.eventLoop(ChangeSetService.java:199)
at oracle.jdevimpl.vcs.changeset.ChangeSetService.access$200(ChangeSetService.java:56)
at oracle.jdevimpl.vcs.changeset.ChangeSetService$2.run(ChangeSetService.java:138)
at java.lang.Thread.run(Thread.java:619)
"TimedCache-Timer" daemon prio=6 tid=0x32fa2c00 nid=0xe4 in Object.wait() [0x346af000..0x346afc94]
java.lang.Thread.State: TIMED_WAITING (on object monitor)
at java.lang.Object.wait(Native Method)
at java.util.TimerThread.mainLoop(Timer.java:509)
- locked <0x05f617b0> (a java.util.TaskQueue)
at java.util.TimerThread.run(Timer.java:462)
"JarIndex Timer" daemon prio=6 tid=0x3399f400 nid=0x6ec in Object.wait() [0x3411f000..0x3411fd14]
java.lang.Thread.State: TIMED_WAITING (on object monitor)
at java.lang.Object.wait(Native Method)
at java.util.TimerThread.mainLoop(Timer.java:509)
- locked <0x05ea2308> (a java.util.TaskQueue)
at java.util.TimerThread.run(Timer.java:462)
"AWT-EventQueue-0" prio=6 tid=0x3395f000 nid=0xdec in Object.wait() [0x33fcf000..0x33fcfd94]
java.lang.Thread.State: WAITING (on object monitor)
at java.lang.Object.wait(Native Method)
at java.lang.Object.wait(Object.java:485)
at java.awt.EventQueue.getNextEvent(EventQueue.java:479)
- locked <0x05ea23b8> (a java.awt.EventQueue)
at java.awt.EventDispatchThread.pumpOneEventForFilters(EventDispatchThread.java:236)
at java.awt.EventDispatchThread.pumpEventsForFilter(EventDispatchThread.java:184)
at java.awt.EventDispatchThread.pumpEventsForHierarchy(EventDispatchThread.java:174)
at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:169)
at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:161)
at java.awt.EventDispatchThread.run(EventDispatchThread.java:122)
"AWT-Windows" daemon prio=6 tid=0x33952c00 nid=0x6d0 runnable [0x33dcf000..0x33dcfa94]
java.lang.Thread.State: RUNNABLE
at sun.awt.windows.WToolkit.eventLoop(Native Method)
at sun.awt.windows.WToolkit.run(WToolkit.java:291)
at java.lang.Thread.run(Thread.java:619)
"AWT-Shutdown" prio=6 tid=0x33951800 nid=0xddc in Object.wait() [0x33ccf000..0x33ccfb14]
java.lang.Thread.State: WAITING (on object monitor)
at java.lang.Object.wait(Native Method)
at java.lang.Object.wait(Object.java:485)
at sun.awt.AWTAutoShutdown.run(AWTAutoShutdown.java:259)
- locked <0x05ea24e0> (a java.lang.Object)
at java.lang.Thread.run(Thread.java:619)
"Java2D Disposer" daemon prio=10 tid=0x3393bc00 nid=0xf68 in Object.wait() [0x33bcf000..0x33bcfb94]
java.lang.Thread.State: WAITING (on object monitor)
at java.lang.Object.wait(Native Method)
at java.lang.ref.ReferenceQueue.remove(ReferenceQueue.java:116)
- locked <0x05ea2570> (a java.lang.ref.ReferenceQueue$Lock)
at java.lang.ref.ReferenceQueue.remove(ReferenceQueue.java:132)
at sun.java2d.Disposer.run(Disposer.java:125)
at java.lang.Thread.run(Thread.java:619)
"Low Memory Detector" daemon prio=6 tid=0x32f65400 nid=0xf5c runnable [0x00000000..0x00000000]
java.lang.Thread.State: RUNNABLE
"CompilerThread0" daemon prio=10 tid=0x32f5f800 nid=0xe64 waiting on condition [0x00000000..0x335cf9bc]
java.lang.Thread.State: RUNNABLE
"Attach Listener" daemon prio=10 tid=0x32f5dc00 nid=0x328 runnable [0x00000000..0x00000000]
java.lang.Thread.State: RUNNABLE
"Signal Dispatcher" daemon prio=10 tid=0x32f5cc00 nid=0x148 waiting on condition [0x00000000..0x00000000]
java.lang.Thread.State: RUNNABLE
"Finalizer" daemon prio=8 tid=0x32f49800 nid=0xe38 in Object.wait() [0x332cf000..0x332cfa94]
java.lang.Thread.State: WAITING (on object monitor)
at java.lang.Object.wait(Native Method)
at java.lang.ref.ReferenceQueue.remove(ReferenceQueue.java:116)
- locked <0x05e20298> (a java.lang.ref.ReferenceQueue$Lock)
at java.lang.ref.ReferenceQueue.remove(ReferenceQueue.java:132)
at java.lang.ref.Finalizer$FinalizerThread.run(Finalizer.java:159)
"Reference Handler" daemon prio=10 tid=0x32f48400 nid=0xe90 in Object.wait() [0x331cf000..0x331cfb14]
java.lang.Thread.State: WAITING (on object monitor)
at java.lang.Object.wait(Native Method)
at java.lang.Object.wait(Object.java:485)
at java.lang.ref.Reference$ReferenceHandler.run(Reference.java:116)
- locked <0x05e20320> (a java.lang.ref.Reference$Lock)
"main" prio=6 tid=0x003e7800 nid=0x8bc waiting on condition [0x00000000..0x0013fae8]
java.lang.Thread.State: RUNNABLE
"VM Thread" prio=10 tid=0x32f44c00 nid=0x238 runnable
"VM Periodic Task Thread" prio=10 tid=0x32f67800 nid=0xbc8 waiting on condition
JNI global references: 4092
Heap
def new generation total 9216K, used 7605K [0x02cf0000, 0x036e0000, 0x05e20000)
eden space 8256K, 90% used [0x02cf0000, 0x034414a0, 0x03500000)
from space 960K, 11% used [0x03500000, 0x0351c218, 0x035f0000)
to space 960K, 0% used [0x035f0000, 0x035f0000, 0x036e0000)
tenured generation total 121152K, used 60529K [0x05e20000, 0x0d470000, 0x2acf0000)
the space 121152K, 49% used [0x05e20000, 0x0993c4f8, 0x0993c600, 0x0d470000)
compacting perm gen total 72704K, used 72561K [0x2acf0000, 0x2f3f0000, 0x32cf0000)
the space 72704K, 99% used [0x2acf0000, 0x2f3cc630, 0x2f3cc800, 0x2f3f0000)
No shared spaces configured. -
Using CLOB data type - Pros and Cons
Dear Gurus,
We are designing a database that will be receiving comments from external data source. These comments are stored as CLOB in the external database. We found that only 1% of incoming data will be larger than 4000 characters and are now evaluating the Pros and Cons of storing only 4000 characters of incoming comments in VARCHAR2 data type or using CLOB data type.
Some of the concerns brought up during discussion were:
- having to store CLOBs in separate tablespace;
- applications, such Toad require changing defaults settings to display CLOBs in the grid. Default value is not to display them;
- applications that build web page with CLOBs will be struggling to fit 18 thousand chararcters of which 17 thousand are blank lines;
- cashing CLOBs in memory will consume big chunk of data buffers which will affect performance;
- to manipulate CLOBs you need PL/SQL anonymous block or procedure;
- bind variables cannot be assigned CLOB value;
- dynamic SQL cannot use CLOBs;
- temp tables don't work very well with CLOBs;
- fuzzy logic search on CLOBs is ineffective;
- not all ODBC drivers support Oracle CLOBs
- UNION, MINUS, INTERSECT don't work with CLOBs
I have not delt with CLOB data type in the past, so I am hoping to hear from you of any possible issues/hastles we may encounter?848428 wrote:
Dear Gurus,
We are designing a database that will be receiving comments from external data source. These comments are stored as CLOB in the external database. We found that only 1% of incoming data will be larger than 4000 characters and are now evaluating the Pros and Cons of storing only 4000 characters of incoming comments in VARCHAR2 data type or using CLOB data type.
Some of the concerns brought up during discussion were:
- having to store CLOBs in separate tablespace;They can be stored inline too. Depends on requirements.
- applications, such Toad require changing defaults settings to display CLOBs in the grid. Default value is not to display them;Toad is a developer tool so that shouldn't matter. What should matter is how you display the data to end users etc. but that will depend on the interface. Some can handle CLOBs and others not. Again, it depends on the requirements.
- applications that build web page with CLOBs will be struggling to fit 18 thousand chararcters of which 17 thousand are blank lines;Why would they struggle? 18,000 characters is only around 18k in file size, that's not that big to a web page.
- cashing CLOBs in memory will consume big chunk of data buffers which will affect performance;Who's caching them in memory? What are you planning on doing with these CLOBs? There's no real reason they should impact performance any more than anything else, but it depends on your requirements as to how you plan to use them.
- to manipulate CLOBs you need PL/SQL anonymous block or procedure;You can manipulate CLOBs in SQL too, using the DBMS_LOB package.
- bind variables cannot be assigned CLOB value;Are you sure?
- dynamic SQL cannot use CLOBs;Yes it can. 11g supports CLOBs for EXECUTE IMMEDIATE statements and pre 11g you can use the DBMS_SQL package with CLOB's split into a VARCHAR2S structure.
- temp tables don't work very well with CLOBs;What do you mean "don't work well"?
- fuzzy logic search on CLOBs is ineffective;Seems like you're pulling information from various sources without context. Again, it depends on your requirements as to how you are going to use the CLOB's
- not all ODBC drivers support Oracle CLOBs not all, but there are some. Again, it depends what you want to achieve.
- UNION, MINUS, INTERSECT don't work with CLOBsTrue.
I have not delt with CLOB data type in the past, so I am hoping to hear from you of any possible issues/hastles we may encounter?You may have more hassle if you "need" to accept more than 4000 characters and you are splitting it into seperate columns or rows, when a CLOB would do it easily.
It seems as though you are trying to find all the negative aspects of CLOBs and ignoring all the positive aspects, and also ignoring the negative aspects of not using CLOB's.
Without context you're assumptions are just that, assumptions, so nobody can tell you if it will be right or wrong to use them. CLOB's do have their uses, just as XMLTYPE's have their uses etc. If you're using them for the right reasons then great, but if you're ignoring them for the wrong reasons then you'll suffer. -
ASP & Clob fields in the Oracle Database 8i
Hi All,
This is the first time I am posting a question. We are having a problem interfacing ASP pages with Clob fields int he Oracle Database.
We are trying to display clob fields in an oracle database from ASP PAge. The ASP Page does a select to a clob field from a table. But we lose the formatting od the data inside the clob field when we display it out using ASP. We display it as a
single stream of data. But when we display the clob using SQLPLUS we do see the formatted data.
How can we solve this issue or circumvent it ?
We are not looking to parse through the clob field in ASP, rather we already have a stored procedure that parses the data for us. The parsed data is then stored in a clob field already formatted the way we need it. The problem occurs when the ASP
page reads the clob field. The ASP page reads it as one continuos string instead of the formatted data that exists in the clob field.
I imported the data from Oracle to Access in order to view the raw data. The data is shown formatted properly in Access, so we know our stored procedure is doing what it supposed to do. As far as getting the data to display. The only way to retrieve (as far as I know) a clob field using ASP is by a built in function called GetChunk(). Is there a better method of displaying the formatted data aside from parsing on the client side, using ASP?
Let me know if anyone has a solution to this problem.
Thanks for your help and time. Sanjiv.Sanjiv, you might want to try some of the Windows development forums:
ODBC: http://forums.oracle.com/forums/forum.jsp?id=763957
New .NET provider forum: http://forums.oracle.com/forums/forum.jsp?id=1015160
Oracle Objects for OLE: http://forums.oracle.com/forums/forum.jsp?id=763961
Oracle Provider for OLE DB: http://forums.oracle.com/forums/forum.jsp?id=763961
Oracle Services for MTS: http://forums.oracle.com/forums/forum.jsp?id=763960
You'll reach a more appropriate audience than just the Web services audience.
Mike.
Maybe you are looking for
-
Installation problem with already installed apache, help!
Alright, I have oracle 9i client installed on a windows 2000 machine. I'm admin (it is a laptop that dual boots Solaris and Windows 2000). I also had apache 2 and tomcat with jk2 connector. Normally I run a web app off of this laptop, connecting to a
-
Virtual PC 7.0.3 in PowerMac G4 DA with OS X: how to make it boot from CD?
I'm facing an issue with Virtual PC in my PowerMac G4 Digital Audio, with Mac Os X 10.5.8. I've just installed Virtual PC 7 and upgraded it to 7.0.3. Everything seems to be running ok, except for one issue: it doesn't boot from CD. So, the Virtual PC
-
Adobe acrobat x pro does not want to install on win7, 64bit
Is there anyone that can help me? I never managed to sucessfull install Adobe Acrobat x pro on my windows7, 64bit system - it just won't work
-
Apex 4 Cascading LOV's how to set a child LOV back to null return value
Hi, My problem is I am using the new Dynamic Actions to implement Cascading LOV functionality in Apex 4 which means not having to submit the page to update child LOVs after parent LOV changes. What I am finding is that when you change the parent LOV
-
Where to set "module load option"
I have been checking one teststand sequence file and I got a message to change the module load option to dynamic load module....but I simply couldn't find where to set it. please help me with any input. thanks a lot