[prev in list] [next in list] [prev in thread] [next in thread] 

List:       log4j-dev
Subject:    Re: CLOB column datatype for JDBCPlus jdbc appender
From:       "Vaibhav Kumar" <vaibhavkumar14 () gmail ! com>
Date:       2008-12-01 10:49:53
Message-ID: 349b2c0f0812010237k7a1299eara61894dff5562875 () mail ! gmail ! com
[Download RAW message or body]

Hi Ece,
For CLOB usage, you would have to modify log4j.xml by using the prepared
statement approach. Also you would have to use MDC in your logger class.
eg. in log4j.xml

<appender name="JDBC" class="org.apache.log4j.jdbcplus.JDBCAppender">

        <param name="url" value="jdbc:oracle:thin:@localhost:1521:XE"/>
         <param name="dbclass" value="oracle.jdbc.OracleDriver" />
        <param name="username" value="system" />
        <param name="password" value="welcome1" />
        <param name="connector"
value="edu.unc.its.util.MyOracleConnectionHandler" />
        <param name="table" value="error_log" />
          <param name="column" value="id~ORACLE_SEQUENCE~error_log_seq" />
         <param name="column" value="process_id~MDC~ProcessId" />
         <param name="column" value="process_name~MDC~ProcessName" />
         <param name="column" value="message_id~MDC~MessageId" />
         <param name="column" value="transaction_id~MDC~TransactionId" />
         <param name="column" value="instance_id~MDC~InstanceId" />
         <param name="column" value="source_system~MDC~SourceSystem" />
         <param name="column" value="target_system~MDC~TargetSystem" />
         <param name="column" value="error_log_level~MDC~ErrorLogLevel"
/>
         <param name="column" value="attribute1~MDC~Attribute1" />
         <param name="column" value="attribute2~MDC~Attribute2" />
         <param name="column" value="attribute3~MDC~Attribute3" />
         <param name="column" value="attribute4~MDC~Attribute4" />
         <param name="column" value="attribute5~MDC~Attribute5" />
         <param name="column" value="error_message~MDC~ErrorMessage" />
         <param name="column" value="row_mod_dt~MDC~RowModifyDate" />
         <param name="column" value="row_create_dt~MDC~RowCreateDate" />
         <param name="column" value="message_timestamp~MDC~MessageTimestamp"
/>
          <param name="usePreparedStatements" value="true" />
          <param name="usePreparedStatements" value="true" />
         <filter class="org.apache.log4j.varia.LevelRangeFilter">
            <param name="LevelMin" value="error" />
            <param name="LevelMax" value="fatal" />
        </filter>
    </appender>

In logger class code snippet can be:
        MDC.put(MESSAGE_TIMESTAMP, getMessageDate(date_time));
        MDC.put(PROCESS_ID, process_id);
        MDC.put(PROCESS_NAME, process_name);
        MDC.put(MESSAGE_ID, message_id);
        MDC.put(TRANSACTION_ID, transaction_id);
        MDC.put(INSTANCE_ID, instance_id);
        MDC.put(SOURCE_SYSTEM, source);
        MDC.put(TARGET_SYSTEM, target);
        MDC.put(ERROR_LOG_LEVEL, service_level);
        MDC.put(ERROR_MESSAGE, message);
        MDC.put(ROW_MODIFY_DATE, formatter.format(new Date()));
        MDC.put(ROW_CREATE_DATE, formatter.format(new Date()));

subsequently removal also:

        MDC.remove(PROCESS_ID);
        MDC.remove(PROCESS_NAME);
        MDC.remove(MESSAGE_TIMESTAMP);
        MDC.remove(MESSAGE_ID);
        MDC.remove(TRANSACTION_ID);
        MDC.remove(INSTANCE_ID);
        MDC.remove(SOURCE_SYSTEM);
        MDC.remove(TARGET_SYSTEM);
        MDC.remove(ERROR_LOG_LEVEL);
        MDC.remove(ERROR_MESSAGE);
        MDC.remove(ROW_MODIFY_DATE);
        MDC.remove(ROW_CREATE_DATE);


Thanks & Regards,
Vaibhav


On Tue, Nov 25, 2008 at 8:34 PM, Ece Yildirim <eceyld@yahoo.com> wrote:

>
> Hi Vaibhav,
>
> I am suffering of the same error. Could you find a solution regarding this
> problem ? I checked org.apache.log4j.jdbcplus.JDBCLogger class, there seems
> to be no explicit implementation for CLOB data type.
>
> Thank you
> Ece
>
>
>
>
> Vaibhav Kumar wrote:
> >
> > Hi,
> > I am using JDBCPlus (http://www.dankomannhaupt.de/projects/index.html )
> as
> > a
> > jdbc appender for my application. For a particular requirement, I have to
> > make a column datatype from varchar2(4000) to CLOB. But as soon as I do
> > this, my application fails to log in database giving stack trace as
> >
> > log4j:ERROR JDBCAppender::flush_buffer(), :
> > java.sql.SQLException: Internal Error: Unable to construct a Datum from
> > the
> > specified input
> >    at oracle.jdbc.dbaccess.DBError.throwSqlException(DBError.java:168)
> >    at oracle.jdbc.dbaccess.DBError.throwSqlException(DBError.java:210)
> >    at oracle.jdbc.dbaccess.DBError.check_error(DBError.java:829)
> >    at oracle.sql.SQLUtil.makeDatum(SQLUtil.java:645)
> >    at oracle.sql.SQLUtil.makeOracleDatum(SQLUtil.java:946)
> >    at
> >
> oracle.jdbc.driver.UpdatableResultSet.updateObject(UpdatableResultSet.java:1568)
> >    at
> >
> oracle.jdbc.driver.OracleResultSet.updateObject(OracleResultSet.java:2787)
> >    at org.apache.log4j.jdbcplus.JDBCLogger.append(JDBCLogger.java:742)
> >    at
> >
> org.apache.log4j.jdbcplus.JDBCAppender.flush_buffer(JDBCAppender.java:887)
> >    at
> org.apache.log4j.jdbcplus.JDBCAppender.append(JDBCAppender.java:867)
> >    at
> > org.apache.log4j.AppenderSkeleton.doAppend(AppenderSkeleton.java:230)
> >    at
> >
> org.apache.log4j.helpers.AppenderAttachableImpl.appendLoopOnAppenders(AppenderAttachableImpl.java:65)
> >    at org.apache.log4j.Category.callAppenders(Category.java:203)
> >    at org.apache.log4j.Category.forcedLog(Category.java:388)
> >    at org.apache.log4j.Category.log(Category.java:853)
> >    at edu.unc.its.util.UNCLogger.prepareAndLogMessage(UNCLogger.java:445)
> >    at edu.unc.its.util.UNCLoggerClient.main(UNCLoggerClient.java:23)
> > log4j:ERROR JDBCAppender::flush_buffer(), :
> > java.sql.SQLException: Internal Error: Unable to construct a Datum from
> > the
> > specified input
> >    at oracle.jdbc.dbaccess.DBError.throwSqlException(DBError.java:168)
> >    at oracle.jdbc.dbaccess.DBError.throwSqlException(DBError.java:210)
> >    at oracle.jdbc.dbaccess.DBError.check_error(DBError.java:829)
> >    at oracle.sql.SQLUtil.makeDatum(SQLUtil.java:645)
> >    at oracle.sql.SQLUtil.makeOracleDatum(SQLUtil.java:946)
> >    at
> >
> oracle.jdbc.driver.UpdatableResultSet.updateObject(UpdatableResultSet.java:1568)
> >    at
> >
> oracle.jdbc.driver.OracleResultSet.updateObject(OracleResultSet.java:2787)
> >    at org.apache.log4j.jdbcplus.JDBCLogger.append(JDBCLogger.java:742)
> >    at
> >
> org.apache.log4j.jdbcplus.JDBCAppender.flush_buffer(JDBCAppender.java:887)
> >    at
> org.apache.log4j.jdbcplus.JDBCAppender.append(JDBCAppender.java:867)
> >    at
> > org.apache.log4j.AppenderSkeleton.doAppend(AppenderSkeleton.java:230)
> >    at
> >
> org.apache.log4j.helpers.AppenderAttachableImpl.appendLoopOnAppenders(AppenderAttachableImpl.java:65)
> >    at org.apache.log4j.Category.callAppenders(Category.java:203)
> >    at org.apache.log4j.Category.forcedLog(Category.java:388)
> >    at org.apache.log4j.Category.log(Category.java:853)
> >    at edu.unc.its.util.UNCLogger.prepareAndLogMessage(UNCLogger.java:445)
> >    at edu.unc.its.util.UNCLoggerClient.main(UNCLoggerClient.java:23)
> >
> >
> > Any suggestions as to how can I incorporate a CLOB datatype in JDBCPlus
> > jdbc
> > appender will be most welcome.
> >
> > Regards,
> > Vaibhav
> >
> >
>
> --
> View this message in context:
> http://www.nabble.com/CLOB-column-datatype-for-JDBCPlus-jdbc-appender-tp19306835p20682090.html
> Sent from the Log4j - Dev mailing list archive at Nabble.com.
>
>
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: log4j-dev-unsubscribe@logging.apache.org
> For additional commands, e-mail: log4j-dev-help@logging.apache.org
>
>

[Attachment #3 (text/html)]

Hi Ece,<br>For CLOB usage, you would have to modify log4j.xml by using the prepared \
statement approach. Also you would have to use MDC in your logger class.<br>eg. in \
log4j.xml<br><br>&lt;appender name=&quot;JDBC&quot; \
class=&quot;org.apache.log4j.jdbcplus.JDBCAppender&quot;&gt;<br> \
<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &lt;param name=&quot;url&quot; \
value=&quot;jdbc:oracle:thin:@localhost:1521:XE&quot;/&gt;<br>&nbsp;&nbsp;&nbsp;&nbsp; \
&nbsp;&nbsp;&nbsp; &lt;param name=&quot;dbclass&quot; \
value=&quot;oracle.jdbc.OracleDriver&quot; /&gt; <br>&nbsp;&nbsp;&nbsp; \
&nbsp;&nbsp;&nbsp; &lt;param name=&quot;username&quot; value=&quot;system&quot; /&gt; \
<br> &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &lt;param name=&quot;password&quot; \
value=&quot;welcome1&quot; /&gt; <br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &lt;param \
name=&quot;connector&quot; \
value=&quot;edu.unc.its.util.MyOracleConnectionHandler&quot; /&gt; \
<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &lt;param name=&quot;table&quot; \
value=&quot;error_log&quot; /&gt; <br> &nbsp;&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; \
&nbsp;&lt;param name=&quot;column&quot; \
value=&quot;id~ORACLE_SEQUENCE~error_log_seq&quot; /&gt;<br>&nbsp;&nbsp;&nbsp; \
&nbsp;&nbsp;&nbsp; &nbsp;&lt;param name=&quot;column&quot; \
value=&quot;process_id~MDC~ProcessId&quot; /&gt;<br>&nbsp;&nbsp;&nbsp; \
&nbsp;&nbsp;&nbsp; &nbsp;&lt;param name=&quot;column&quot; \
value=&quot;process_name~MDC~ProcessName&quot; /&gt;<br> &nbsp;&nbsp;&nbsp; \
&nbsp;&nbsp;&nbsp; &nbsp;&lt;param name=&quot;column&quot; \
value=&quot;message_id~MDC~MessageId&quot; /&gt;<br>&nbsp;&nbsp;&nbsp; \
&nbsp;&nbsp;&nbsp; &nbsp;&lt;param name=&quot;column&quot; \
value=&quot;transaction_id~MDC~TransactionId&quot; /&gt;<br>&nbsp;&nbsp;&nbsp; \
&nbsp;&nbsp;&nbsp; &nbsp;&lt;param name=&quot;column&quot; \
value=&quot;instance_id~MDC~InstanceId&quot; /&gt;<br> &nbsp;&nbsp;&nbsp; \
&nbsp;&nbsp;&nbsp; &nbsp;&lt;param name=&quot;column&quot; \
value=&quot;source_system~MDC~SourceSystem&quot; /&gt;<br>&nbsp;&nbsp;&nbsp; \
&nbsp;&nbsp;&nbsp; &nbsp;&lt;param name=&quot;column&quot; \
value=&quot;target_system~MDC~TargetSystem&quot; /&gt;<br>&nbsp;&nbsp;&nbsp; \
&nbsp;&nbsp;&nbsp; &nbsp;&lt;param name=&quot;column&quot; \
value=&quot;error_log_level~MDC~ErrorLogLevel&quot; /&gt;&nbsp;&nbsp;&nbsp; \
&nbsp;&nbsp;&nbsp; &nbsp;<br> &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&lt;param \
name=&quot;column&quot; value=&quot;attribute1~MDC~Attribute1&quot; \
/&gt;<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&lt;param \
name=&quot;column&quot; value=&quot;attribute2~MDC~Attribute2&quot; \
/&gt;<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&lt;param \
name=&quot;column&quot; value=&quot;attribute3~MDC~Attribute3&quot; /&gt;<br> \
&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&lt;param name=&quot;column&quot; \
value=&quot;attribute4~MDC~Attribute4&quot; /&gt;<br>&nbsp;&nbsp;&nbsp; \
&nbsp;&nbsp;&nbsp; &nbsp;&lt;param name=&quot;column&quot; \
value=&quot;attribute5~MDC~Attribute5&quot; /&gt;<br>&nbsp;&nbsp;&nbsp; \
&nbsp;&nbsp;&nbsp; &nbsp;&lt;param name=&quot;column&quot; \
value=&quot;error_message~MDC~ErrorMessage&quot; /&gt;<br> &nbsp;&nbsp;&nbsp; \
&nbsp;&nbsp;&nbsp; &nbsp;&lt;param name=&quot;column&quot; \
value=&quot;row_mod_dt~MDC~RowModifyDate&quot; /&gt;<br>&nbsp;&nbsp;&nbsp; \
&nbsp;&nbsp;&nbsp; &nbsp;&lt;param name=&quot;column&quot; \
value=&quot;row_create_dt~MDC~RowCreateDate&quot; /&gt;<br>&nbsp;&nbsp;&nbsp; \
&nbsp;&nbsp;&nbsp; &nbsp;&lt;param name=&quot;column&quot; \
value=&quot;message_timestamp~MDC~MessageTimestamp&quot; /&gt;&nbsp; \
&nbsp;&nbsp;&nbsp;&nbsp; <br> &nbsp;&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; \
&nbsp;&lt;param name=&quot;usePreparedStatements&quot; value=&quot;true&quot; /&gt; \
<br>&nbsp;&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp;&nbsp; &lt;param \
name=&quot;usePreparedStatements&quot; value=&quot;true&quot; /&gt; \
<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&lt;filter \
class=&quot;org.apache.log4j.varia.LevelRangeFilter&quot;&gt;<br> &nbsp;&nbsp;&nbsp; \
&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &lt;param name=&quot;LevelMin&quot; \
value=&quot;error&quot; /&gt;<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; \
&nbsp;&nbsp;&nbsp; &lt;param name=&quot;LevelMax&quot; value=&quot;fatal&quot; \
/&gt;<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &lt;/filter&gt;<br>&nbsp;&nbsp;&nbsp; \
&lt;/appender&gt;<br><br>In logger class code snippet can be:<br> &nbsp;&nbsp;&nbsp; \
&nbsp;&nbsp;&nbsp; MDC.put(MESSAGE_TIMESTAMP, \
getMessageDate(date_time));<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; \
MDC.put(PROCESS_ID, process_id);<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; \
MDC.put(PROCESS_NAME, process_name);<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; \
MDC.put(MESSAGE_ID, message_id);<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; \
MDC.put(TRANSACTION_ID, transaction_id);<br> &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; \
MDC.put(INSTANCE_ID, instance_id);<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; \
MDC.put(SOURCE_SYSTEM, source);<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; \
MDC.put(TARGET_SYSTEM, target);<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; \
MDC.put(ERROR_LOG_LEVEL, service_level);<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; \
MDC.put(ERROR_MESSAGE, message);<br> &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; \
MDC.put(ROW_MODIFY_DATE, formatter.format(new Date()));<br>&nbsp;&nbsp;&nbsp; \
&nbsp;&nbsp;&nbsp; MDC.put(ROW_CREATE_DATE, formatter.format(new \
Date()));<br><br>subsequently removal also:<br><br>&nbsp;&nbsp;&nbsp; \
&nbsp;&nbsp;&nbsp; MDC.remove(PROCESS_ID);<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; \
MDC.remove(PROCESS_NAME);<br> &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; \
MDC.remove(MESSAGE_TIMESTAMP);<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; \
MDC.remove(MESSAGE_ID);<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; \
MDC.remove(TRANSACTION_ID);<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; \
MDC.remove(INSTANCE_ID);<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; \
MDC.remove(SOURCE_SYSTEM);<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; \
MDC.remove(TARGET_SYSTEM);<br> &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; \
MDC.remove(ERROR_LOG_LEVEL);<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; \
MDC.remove(ERROR_MESSAGE);<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; \
MDC.remove(ROW_MODIFY_DATE);<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; \
MDC.remove(ROW_CREATE_DATE);<br><br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; \
&nbsp;<br>Thanks &amp; Regards,<br>Vaibhav<br><br><br><div class="gmail_quote"> On \
Tue, Nov 25, 2008 at 8:34 PM, Ece Yildirim <span dir="ltr">&lt;<a \
href="mailto:eceyld@yahoo.com">eceyld@yahoo.com</a>&gt;</span> wrote:<br><blockquote \
class="gmail_quote" style="border-left: 1px solid rgb(204, 204, 204); margin: 0pt 0pt \
0pt 0.8ex; padding-left: 1ex;"> <br>
Hi Vaibhav,<br>
<br>
I am suffering of the same error. Could you find a solution regarding this<br>
problem ? I checked org.apache.log4j.jdbcplus.JDBCLogger class, there seems<br>
to be no explicit implementation for CLOB data type.<br>
<br>
Thank you<br>
Ece<br>
<div><div></div><div class="Wj3C7c"><br>
<br>
<br>
<br>
Vaibhav Kumar wrote:<br>
&gt;<br>
&gt; Hi,<br>
&gt; I am using JDBCPlus (<a href="http://www.dankomannhaupt.de/projects/index.html" \
target="_blank">http://www.dankomannhaupt.de/projects/index.html</a> ) as<br> &gt; \
a<br> &gt; jdbc appender for my application. For a particular requirement, I have \
to<br> &gt; make a column datatype from varchar2(4000) to CLOB. But as soon as I \
do<br> &gt; this, my application fails to log in database giving stack trace as<br>
&gt;<br>
&gt; log4j:ERROR JDBCAppender::flush_buffer(), :<br>
&gt; java.sql.SQLException: Internal Error: Unable to construct a Datum from<br>
&gt; the<br>
&gt; specified input<br>
&gt; &nbsp; &nbsp;at \
oracle.jdbc.dbaccess.DBError.throwSqlException(DBError.java:168)<br> &gt; &nbsp; \
&nbsp;at oracle.jdbc.dbaccess.DBError.throwSqlException(DBError.java:210)<br> &gt; \
&nbsp; &nbsp;at oracle.jdbc.dbaccess.DBError.check_error(DBError.java:829)<br> &gt; \
&nbsp; &nbsp;at oracle.sql.SQLUtil.makeDatum(SQLUtil.java:645)<br> &gt; &nbsp; \
&nbsp;at oracle.sql.SQLUtil.makeOracleDatum(SQLUtil.java:946)<br> &gt; &nbsp; \
&nbsp;at<br> &gt; oracle.jdbc.driver.UpdatableResultSet.updateObject(UpdatableResultSet.java:1568)<br>
 &gt; &nbsp; &nbsp;at<br>
&gt; oracle.jdbc.driver.OracleResultSet.updateObject(OracleResultSet.java:2787)<br>
&gt; &nbsp; &nbsp;at \
org.apache.log4j.jdbcplus.JDBCLogger.append(JDBCLogger.java:742)<br> &gt; &nbsp; \
&nbsp;at<br> &gt; org.apache.log4j.jdbcplus.JDBCAppender.flush_buffer(JDBCAppender.java:887)<br>
 &gt; &nbsp; &nbsp;at \
org.apache.log4j.jdbcplus.JDBCAppender.append(JDBCAppender.java:867)<br> &gt; &nbsp; \
&nbsp;at<br> &gt; org.apache.log4j.AppenderSkeleton.doAppend(AppenderSkeleton.java:230)<br>
 &gt; &nbsp; &nbsp;at<br>
&gt; org.apache.log4j.helpers.AppenderAttachableImpl.appendLoopOnAppenders(AppenderAttachableImpl.java:65)<br>
 &gt; &nbsp; &nbsp;at org.apache.log4j.Category.callAppenders(Category.java:203)<br>
&gt; &nbsp; &nbsp;at org.apache.log4j.Category.forcedLog(Category.java:388)<br>
&gt; &nbsp; &nbsp;at org.apache.log4j.Category.log(Category.java:853)<br>
&gt; &nbsp; &nbsp;at \
edu.unc.its.util.UNCLogger.prepareAndLogMessage(UNCLogger.java:445)<br> &gt; &nbsp; \
&nbsp;at edu.unc.its.util.UNCLoggerClient.main(UNCLoggerClient.java:23)<br> &gt; \
log4j:ERROR JDBCAppender::flush_buffer(), :<br> &gt; java.sql.SQLException: Internal \
Error: Unable to construct a Datum from<br> &gt; the<br>
&gt; specified input<br>
&gt; &nbsp; &nbsp;at \
oracle.jdbc.dbaccess.DBError.throwSqlException(DBError.java:168)<br> &gt; &nbsp; \
&nbsp;at oracle.jdbc.dbaccess.DBError.throwSqlException(DBError.java:210)<br> &gt; \
&nbsp; &nbsp;at oracle.jdbc.dbaccess.DBError.check_error(DBError.java:829)<br> &gt; \
&nbsp; &nbsp;at oracle.sql.SQLUtil.makeDatum(SQLUtil.java:645)<br> &gt; &nbsp; \
&nbsp;at oracle.sql.SQLUtil.makeOracleDatum(SQLUtil.java:946)<br> &gt; &nbsp; \
&nbsp;at<br> &gt; oracle.jdbc.driver.UpdatableResultSet.updateObject(UpdatableResultSet.java:1568)<br>
 &gt; &nbsp; &nbsp;at<br>
&gt; oracle.jdbc.driver.OracleResultSet.updateObject(OracleResultSet.java:2787)<br>
&gt; &nbsp; &nbsp;at \
org.apache.log4j.jdbcplus.JDBCLogger.append(JDBCLogger.java:742)<br> &gt; &nbsp; \
&nbsp;at<br> &gt; org.apache.log4j.jdbcplus.JDBCAppender.flush_buffer(JDBCAppender.java:887)<br>
 &gt; &nbsp; &nbsp;at \
org.apache.log4j.jdbcplus.JDBCAppender.append(JDBCAppender.java:867)<br> &gt; &nbsp; \
&nbsp;at<br> &gt; org.apache.log4j.AppenderSkeleton.doAppend(AppenderSkeleton.java:230)<br>
 &gt; &nbsp; &nbsp;at<br>
&gt; org.apache.log4j.helpers.AppenderAttachableImpl.appendLoopOnAppenders(AppenderAttachableImpl.java:65)<br>
 &gt; &nbsp; &nbsp;at org.apache.log4j.Category.callAppenders(Category.java:203)<br>
&gt; &nbsp; &nbsp;at org.apache.log4j.Category.forcedLog(Category.java:388)<br>
&gt; &nbsp; &nbsp;at org.apache.log4j.Category.log(Category.java:853)<br>
&gt; &nbsp; &nbsp;at \
edu.unc.its.util.UNCLogger.prepareAndLogMessage(UNCLogger.java:445)<br> &gt; &nbsp; \
&nbsp;at edu.unc.its.util.UNCLoggerClient.main(UNCLoggerClient.java:23)<br> &gt;<br>
&gt;<br>
&gt; Any suggestions as to how can I incorporate a CLOB datatype in JDBCPlus<br>
&gt; jdbc<br>
&gt; appender will be most welcome.<br>
&gt;<br>
&gt; Regards,<br>
&gt; Vaibhav<br>
&gt;<br>
&gt;<br>
<br>
</div></div><font color="#888888">--<br>
View this message in context: <a \
href="http://www.nabble.com/CLOB-column-datatype-for-JDBCPlus-jdbc-appender-tp19306835p20682090.html" \
target="_blank">http://www.nabble.com/CLOB-column-datatype-for-JDBCPlus-jdbc-appender-tp19306835p20682090.html</a><br>


Sent from the Log4j - Dev mailing list archive at Nabble.com.<br>
<br>
<br>
---------------------------------------------------------------------<br>
To unsubscribe, e-mail: <a \
href="mailto:log4j-dev-unsubscribe@logging.apache.org">log4j-dev-unsubscribe@logging.apache.org</a><br>
 For additional commands, e-mail: <a \
href="mailto:log4j-dev-help@logging.apache.org">log4j-dev-help@logging.apache.org</a><br>
 <br>
</font></blockquote></div><br>



[prev in list] [next in list] [prev in thread] [next in thread] 

Configure | About | News | Add a list | Sponsored by KoreLogic