On Tue, Oct 20, 2009 at 1:38 AM, SoaMattH <[email protected]> wrote:
>
> The defect outlined at
> https://issues.apache.org/activemq/browse/CAMEL-2077
>
> is not quite the problem.
>
> That problem is that in SqlProducer.sql
> lines 47 - 52
>
>    if (exchange.getIn().getBody() != null) {
>        Iterator<?> iterator = exchange.getIn().getBody(Iterator.class);
>            while (iterator != null && iterator.hasNext()) {
>                ps.setObject(argNumber++, iterator.next());
>             }
>     }
>
> The exchange body has a value of:
> ----------------------------------
> JobDetail 'DEFAULT.quartz://omsSabaCourses/?cron=0+0+20+%3F+*+MON-SUN':
> jobClass: 'org.apache.camel.component.quartz.CamelJob
> isStateful: false
> isVolatile: false
> isDurable: false
> requestsRecovers: false
>
> The iterator then processes these values into an iterator, the value
> in the itorator are then tried to be put in to the prepared statement
> this is what fails.
>

Hi

Yeah I do think camel-quartz should not store JobDetail on the body of
the exchange. People use quartz to trigger a route with an empty body.
I think we should move that JobDetail as a header instead.

Then its also the same as the timer endpoint as it also has a empty body.


Let me create a ticket for that.


> The rest of the code looks like that it will process with out any
> parameters being set.
>
> Maybe the <Camel:SQL> component needs a more specific way to set its
> parameters?
>
> The
> <setBody><constant></constant></setBody>
> sets the  exchang body to empty and this is a good work around.
>
> My route now looks like:
> <camel:route id="omsSabaCoursesRoute">
>        <camel:from uri="quartz://omsSabaCourses/?cron=0+0+20+?+*+MON-SUN"
> />
>        <camel:policy ref="SABA_READ_ONLY" />
>
>        <!-- WARNING!! -->
>        <!-- Note: the following clears the exchange in body only use with
> no parameters in sql. -->
>        <camel:setBody><camel:constant></camel:constant></camel:setBody>
>
>        <camel:to ref="sabaOmsCoursesSQLEndPoint" />
>        <camel:to uri="bean:sabaCourseService" />
> </camel:route>
>
>
> Thanks for the help
> Matt Hannay
>
>
>
> Claus Ibsen-2 wrote:
>>
>> On Mon, Oct 19, 2009 at 2:01 PM, SoaMattH <[email protected]>
>> wrote:
>>>
>>>
>>> Any hints on how to set the exchange message body to be empty ??
>>>
>>
>> <setBody><constant></constant></setBody>
>>
>>
>>> Matt
>>>
>>>
>>>
>>>
>>>
>>>
>>> SoaMattH wrote:
>>>>
>>>> I have the following End point and route:
>>>>
>>>>   <camel:endpoint id="sabaOmsCoursesSQLEndPoint"
>>>>     uri="sql:select * from
>>>> RPV_DES_OMS_COURSES?dataSourceRef=sabaDataSource"/>
>>>>
>>>> ....
>>>>
>>>>   <camel:route id="omsSabaCoursesRoute">
>>>>     <camel:from uri="quartz://omsSabaCourses/?cron=0+0+20+?+*+MON-SUN"
>>>> />
>>>>     <!-- <camel:policy ref="SABA_READ_ONLY" /> -->
>>>>     <camel:to ref="sabaOmsCoursesSQLEndPoint" />
>>>>     <camel:to uri="bean:sabaCourseService" />
>>>>   </camel:route>
>>>>
>>>> The Endpoint is a view that consists of CHAR, VARCHAR2 and DATE coulmns
>>>> so nothing out of the ordinary.
>>>>
>>>>
>>>>
>>>>
>>>> When the SQL is called the following Error is given:
>>>>
>>>> DEBUG [DefaultQuartzScheduler_QuartzSchedulerThread]
>>>> (SimpleJobFactory.java:50) - Producing instance of Job
>>>> 'DEFAULT.quartz://omsSabaCourses/?cron=0+0+20+%3F+*+MON-SUN',
>>>> class=org.apache.camel.component.quartz.CamelJob
>>>> DEBUG [DefaultQuartzScheduler_Worker-1] (JobRunShell.java:201) - Calling
>>>> execute on job
>>>> DEFAULT.quartz://omsSabaCourses/?cron=0+0+20+%3F+*+MON-SUN
>>>> DEBUG [DefaultQuartzScheduler_Worker-1] (QuartzEndpoint.java:115) -
>>>> Firing
>>>> Quartz Job with context: JobExecutionContext: trigger:
>>>> 'Camel.omsSabaCourses job:
>>>> DEFAULT.quartz://omsSabaCourses/?cron=0+0+20+%3F+*+MON-SUN fireTime:
>>>> 'Mon
>>>> Oct 19 20:00:00 EST 2009 scheduledFireTime: Mon Oct 19 20:00:00 EST 2009
>>>> previousFireTime: 'null nextFireTime: Tue Oct 20 20:00:00 EST 2009
>>>> isRecovering: false refireCount: 0
>>>> DEBUG [DefaultQuartzScheduler_Worker-1] (QuartzEndpoint.java:115) -
>>>> Firing
>>>> Quartz Job with context: JobExecutionContext: trigger:
>>>> 'Camel.omsSabaCourses job:
>>>> DEFAULT.quartz://omsSabaCourses/?cron=0+0+20+%3F+*+MON-SUN fireTime:
>>>> 'Mon
>>>> Oct 19 20:00:00 EST 2009 scheduledFireTime: Mon Oct 19 20:00:00 EST 2009
>>>> previousFireTime: 'null nextFireTime: Tue Oct 20 20:00:00 EST 2009
>>>> isRecovering: false refireCount: 0
>>>> DEBUG [DefaultQuartzScheduler_Worker-1]
>>>> (AbstractPlatformTransactionManager.java:371) - Creating new transaction
>>>> with name [null]: PROPAGATION_REQUIRED,ISOLATION_DEFAULT
>>>> DEBUG [DefaultQuartzScheduler_Worker-1]
>>>> (DriverManagerDataSource.java:163)
>>>> - Creating new JDBC DriverManager Connection to
>>>> [jdbc:oracle:thin:@aserver:1521:sabpdb]
>>>> DEBUG [DefaultQuartzScheduler_Worker-1]
>>>> (DataSourceTransactionManager.java:202) - Acquired Connection
>>>> [oracle.jdbc.driver.t4cconnect...@19f1bac] for JDBC transaction
>>>> DEBUG [DefaultQuartzScheduler_Worker-1]
>>>> (DataSourceTransactionManager.java:219) - Switching JDBC Connection
>>>> [oracle.jdbc.driver.t4cconnect...@19f1bac] to manual commit
>>>> DEBUG [DefaultQuartzScheduler_Worker-1] (DefaultProducer.java:66) -
>>>> Starting producer: Producer[sql://select * from
>>>> RPV_DES_OMS_COURSES?dataSourceRef=sabaDataSource]
>>>> DEBUG [DefaultQuartzScheduler_Worker-1] (DefaultProducer.java:66) -
>>>> Starting producer: Producer[sql://select * from
>>>> RPV_DES_OMS_COURSES?dataSourceRef=sabaDataSource]
>>>> DEBUG [DefaultQuartzScheduler_Worker-1] (ProducerCache.java:201) -
>>>> Adding
>>>> to producer cache with key: Endpoint[sql://select * from
>>>> RPV_DES_OMS_COURSES?dataSourceRef=sabaDataSource] for producer:
>>>> Producer[sql://select * from
>>>> RPV_DES_OMS_COURSES?dataSourceRef=sabaDataSource]
>>>> DEBUG [DefaultQuartzScheduler_Worker-1] (ProducerCache.java:201) -
>>>> Adding
>>>> to producer cache with key: Endpoint[sql://select * from
>>>> RPV_DES_OMS_COURSES?dataSourceRef=sabaDataSource] for producer:
>>>> Producer[sql://select * from
>>>> RPV_DES_OMS_COURSES?dataSourceRef=sabaDataSource]
>>>> DEBUG [DefaultQuartzScheduler_Worker-1] (JdbcTemplate.java:574) -
>>>> Executing prepared SQL statement [select * from RPV_DES_OMS_COURSES]
>>>>  INFO [DefaultQuartzScheduler_Worker-1]
>>>> (XmlBeanDefinitionReader.java:323)
>>>> - Loading XML bean definitions from class path resource
>>>> [org/springframework/jdbc/support/sql-error-codes.xml]
>>>> DEBUG [DefaultQuartzScheduler_Worker-1] (DefaultDocumentLoader.java:72)
>>>> -
>>>> Using JAXP provider [org.apache.xerces.jaxp.DocumentBuilderFactoryImpl]
>>>> DEBUG [DefaultQuartzScheduler_Worker-1] (BeansDtdResolver.java:72) -
>>>> Found
>>>> beans DTD [http://www.springframework.org/dtd/spring-beans-2.0.dtd] in
>>>> classpath: spring-beans-2.0.dtd
>>>> DEBUG [DefaultQuartzScheduler_Worker-1]
>>>> (DefaultBeanDefinitionDocumentReader.java:86) - Loading bean definitions
>>>> DEBUG [DefaultQuartzScheduler_Worker-1]
>>>> (DefaultSingletonBeanRegistry.java:214) - Creating shared instance of
>>>> singleton bean 'DB2'
>>>> DEBUG [DefaultQuartzScheduler_Worker-1]
>>>> (AbstractAutowireCapableBeanFactory.java:383) - Creating instance of
>>>> bean
>>>> 'DB2'
>>>> DEBUG [DefaultQuartzScheduler_Worker-1]
>>>> (AbstractAutowireCapableBeanFactory.java:459) - Eagerly caching bean
>>>> 'DB2'
>>>> to allow for resolving potential circular references
>>>> DEBUG [DefaultQuartzScheduler_Worker-1]
>>>> (AbstractAutowireCapableBeanFactory.java:411) - Finished creating
>>>> instance
>>>> of bean 'DB2'
>>>> DEBUG [DefaultQuartzScheduler_Worker-1]
>>>> (DefaultSingletonBeanRegistry.java:214) - Creating shared instance of
>>>> singleton bean 'Derby'
>>>> DEBUG [DefaultQuartzScheduler_Worker-1]
>>>> (AbstractAutowireCapableBeanFactory.java:383) - Creating instance of
>>>> bean
>>>> 'Derby'
>>>> DEBUG [DefaultQuartzScheduler_Worker-1]
>>>> (AbstractAutowireCapableBeanFactory.java:459) - Eagerly caching bean
>>>> 'Derby' to allow for resolving potential circular references
>>>> DEBUG [DefaultQuartzScheduler_Worker-1]
>>>> (AbstractAutowireCapableBeanFactory.java:411) - Finished creating
>>>> instance
>>>> of bean 'Derby'
>>>> DEBUG [DefaultQuartzScheduler_Worker-1]
>>>> (DefaultSingletonBeanRegistry.java:214) - Creating shared instance of
>>>> singleton bean 'H2'
>>>> DEBUG [DefaultQuartzScheduler_Worker-1]
>>>> (AbstractAutowireCapableBeanFactory.java:383) - Creating instance of
>>>> bean
>>>> 'H2'
>>>> DEBUG [DefaultQuartzScheduler_Worker-1]
>>>> (AbstractAutowireCapableBeanFactory.java:459) - Eagerly caching bean
>>>> 'H2'
>>>> to allow for resolving potential circular references
>>>> DEBUG [DefaultQuartzScheduler_Worker-1]
>>>> (AbstractAutowireCapableBeanFactory.java:411) - Finished creating
>>>> instance
>>>> of bean 'H2'
>>>> DEBUG [DefaultQuartzScheduler_Worker-1]
>>>> (DefaultSingletonBeanRegistry.java:214) - Creating shared instance of
>>>> singleton bean 'HSQL'
>>>> DEBUG [DefaultQuartzScheduler_Worker-1]
>>>> (AbstractAutowireCapableBeanFactory.java:383) - Creating instance of
>>>> bean
>>>> 'HSQL'
>>>> DEBUG [DefaultQuartzScheduler_Worker-1]
>>>> (AbstractAutowireCapableBeanFactory.java:459) - Eagerly caching bean
>>>> 'HSQL' to allow for resolving potential circular references
>>>> DEBUG [DefaultQuartzScheduler_Worker-1]
>>>> (AbstractAutowireCapableBeanFactory.java:411) - Finished creating
>>>> instance
>>>> of bean 'HSQL'
>>>> DEBUG [DefaultQuartzScheduler_Worker-1]
>>>> (DefaultSingletonBeanRegistry.java:214) - Creating shared instance of
>>>> singleton bean 'Informix'
>>>> DEBUG [DefaultQuartzScheduler_Worker-1]
>>>> (AbstractAutowireCapableBeanFactory.java:383) - Creating instance of
>>>> bean
>>>> 'Informix'
>>>> DEBUG [DefaultQuartzScheduler_Worker-1]
>>>> (AbstractAutowireCapableBeanFactory.java:459) - Eagerly caching bean
>>>> 'Informix' to allow for resolving potential circular references
>>>> DEBUG [DefaultQuartzScheduler_Worker-1]
>>>> (AbstractAutowireCapableBeanFactory.java:411) - Finished creating
>>>> instance
>>>> of bean 'Informix'
>>>> DEBUG [DefaultQuartzScheduler_Worker-1]
>>>> (DefaultSingletonBeanRegistry.java:214) - Creating shared instance of
>>>> singleton bean 'MS-SQL'
>>>> DEBUG [DefaultQuartzScheduler_Worker-1]
>>>> (AbstractAutowireCapableBeanFactory.java:383) - Creating instance of
>>>> bean
>>>> 'MS-SQL'
>>>> DEBUG [DefaultQuartzScheduler_Worker-1]
>>>> (AbstractAutowireCapableBeanFactory.java:459) - Eagerly caching bean
>>>> 'MS-SQL' to allow for resolving potential circular references
>>>> DEBUG [DefaultQuartzScheduler_Worker-1]
>>>> (AbstractAutowireCapableBeanFactory.java:411) - Finished creating
>>>> instance
>>>> of bean 'MS-SQL'
>>>> DEBUG [DefaultQuartzScheduler_Worker-1]
>>>> (DefaultSingletonBeanRegistry.java:214) - Creating shared instance of
>>>> singleton bean 'MySQL'
>>>> DEBUG [DefaultQuartzScheduler_Worker-1]
>>>> (AbstractAutowireCapableBeanFactory.java:383) - Creating instance of
>>>> bean
>>>> 'MySQL'
>>>> DEBUG [DefaultQuartzScheduler_Worker-1]
>>>> (AbstractAutowireCapableBeanFactory.java:459) - Eagerly caching bean
>>>> 'MySQL' to allow for resolving potential circular references
>>>> DEBUG [DefaultQuartzScheduler_Worker-1]
>>>> (AbstractAutowireCapableBeanFactory.java:411) - Finished creating
>>>> instance
>>>> of bean 'MySQL'
>>>> DEBUG [DefaultQuartzScheduler_Worker-1]
>>>> (DefaultSingletonBeanRegistry.java:214) - Creating shared instance of
>>>> singleton bean 'Oracle'
>>>> DEBUG [DefaultQuartzScheduler_Worker-1]
>>>> (AbstractAutowireCapableBeanFactory.java:383) - Creating instance of
>>>> bean
>>>> 'Oracle'
>>>> DEBUG [DefaultQuartzScheduler_Worker-1]
>>>> (AbstractAutowireCapableBeanFactory.java:459) - Eagerly caching bean
>>>> 'Oracle' to allow for resolving potential circular references
>>>> DEBUG [DefaultQuartzScheduler_Worker-1]
>>>> (AbstractAutowireCapableBeanFactory.java:411) - Finished creating
>>>> instance
>>>> of bean 'Oracle'
>>>> DEBUG [DefaultQuartzScheduler_Worker-1]
>>>> (DefaultSingletonBeanRegistry.java:214) - Creating shared instance of
>>>> singleton bean 'PostgreSQL'
>>>> DEBUG [DefaultQuartzScheduler_Worker-1]
>>>> (AbstractAutowireCapableBeanFactory.java:383) - Creating instance of
>>>> bean
>>>> 'PostgreSQL'
>>>> DEBUG [DefaultQuartzScheduler_Worker-1]
>>>> (AbstractAutowireCapableBeanFactory.java:459) - Eagerly caching bean
>>>> 'PostgreSQL' to allow for resolving potential circular references
>>>> DEBUG [DefaultQuartzScheduler_Worker-1]
>>>> (AbstractAutowireCapableBeanFactory.java:411) - Finished creating
>>>> instance
>>>> of bean 'PostgreSQL'
>>>> DEBUG [DefaultQuartzScheduler_Worker-1]
>>>> (DefaultSingletonBeanRegistry.java:214) - Creating shared instance of
>>>> singleton bean 'Sybase'
>>>> DEBUG [DefaultQuartzScheduler_Worker-1]
>>>> (AbstractAutowireCapableBeanFactory.java:383) - Creating instance of
>>>> bean
>>>> 'Sybase'
>>>> DEBUG [DefaultQuartzScheduler_Worker-1]
>>>> (AbstractAutowireCapableBeanFactory.java:459) - Eagerly caching bean
>>>> 'Sybase' to allow for resolving potential circular references
>>>> DEBUG [DefaultQuartzScheduler_Worker-1]
>>>> (AbstractAutowireCapableBeanFactory.java:411) - Finished creating
>>>> instance
>>>> of bean 'Sybase'
>>>>  INFO [DefaultQuartzScheduler_Worker-1] (SQLErrorCodesFactory.java:128)
>>>> -
>>>> SQLErrorCodes loaded: [DB2, Derby, H2, HSQL, Informix, MS-SQL, MySQL,
>>>> Oracle, PostgreSQL, Sybase]
>>>> DEBUG [DefaultQuartzScheduler_Worker-1] (SQLErrorCodesFactory.java:201)
>>>> -
>>>> Looking up default SQLErrorCodes for DataSource
>>>> [org.springframework.jdbc.datasource.drivermanagerdatasou...@19c123d]
>>>> DEBUG [DefaultQuartzScheduler_Worker-1] (SQLErrorCodesFactory.java:220)
>>>> -
>>>> Database product name cached for DataSource
>>>> [org.springframework.jdbc.datasource.drivermanagerdatasou...@19c123d]:
>>>> name is 'Oracle'
>>>> DEBUG [DefaultQuartzScheduler_Worker-1] (SQLErrorCodesFactory.java:177)
>>>> -
>>>> SQL error codes for 'Oracle' found
>>>> DEBUG [DefaultQuartzScheduler_Worker-1]
>>>> (SQLErrorCodeSQLExceptionTranslator.java:266) - Unable to translate
>>>> SQLException with Error code '17004', will now try the fallback
>>>> translator
>>>> DEBUG [DefaultQuartzScheduler_Worker-1] (Pipeline.java:99) - Message
>>>> exchange has failed so breaking out of pipeline: Exchange[Message:
>>>> JobDetail 'DEFAULT.quartz://omsSabaCourses/?cron=0+0+20+%3F+*+MON-SUN':
>>>> jobClass: 'org.apache.camel.component.quartz.CamelJob isStateful: false
>>>> isVolatile: false isDurable: false requestsRecovers: false] Exception:
>>>> org.springframework.jdbc.UncategorizedSQLException:
>>>> PreparedStatementCallback; uncategorized SQLException for SQL [select *
>>>> from RPV_DES_OMS_COURSES]; SQL state [null]; error code [17004]; Invalid
>>>> column type; nested exception is java.sql.SQLException: Invalid column
>>>> type
>>>> DEBUG [DefaultQuartzScheduler_Worker-1] (Pipeline.java:99) - Message
>>>> exchange has failed so breaking out of pipeline: Exchange[Message:
>>>> JobDetail 'DEFAULT.quartz://omsSabaCourses/?cron=0+0+20+%3F+*+MON-SUN':
>>>> jobClass: 'org.apache.camel.component.quartz.CamelJob isStateful: false
>>>> isVolatile: false isDurable: false requestsRecovers: false] Exception:
>>>> org.springframework.jdbc.UncategorizedSQLException:
>>>> PreparedStatementCallback; uncategorized SQLException for SQL [select *
>>>> from RPV_DES_OMS_COURSES]; SQL state [null]; error code [17004]; Invalid
>>>> column type; nested exception is java.sql.SQLException: Invalid column
>>>> type
>>>> DEBUG [DefaultQuartzScheduler_Worker-1] (Logger.java:197) - Failed
>>>> delivery for exchangeId: ID-AQ4397-4530-1255946375104-0-0. On delivery
>>>> attempt: 0 caught: org.springframework.jdbc.UncategorizedSQLException:
>>>> PreparedStatementCallback; uncategorized SQLException for SQL [select *
>>>> from RPV_DES_OMS_COURSES]; SQL state [null]; error code [17004]; Invalid
>>>> column type; nested exception is java.sql.SQLException: Invalid column
>>>> type
>>>> DEBUG [DefaultQuartzScheduler_Worker-1] (Logger.java:197) - Failed
>>>> delivery for exchangeId: ID-AQ4397-4530-1255946375104-0-0. On delivery
>>>> attempt: 0 caught: org.springframework.jdbc.UncategorizedSQLException:
>>>> PreparedStatementCallback; uncategorized SQLException for SQL [select *
>>>> from RPV_DES_OMS_COURSES]; SQL state [null]; error code [17004]; Invalid
>>>> column type; nested exception is java.sql.SQLException: Invalid column
>>>> type
>>>> DEBUG [DefaultQuartzScheduler_Worker-1]
>>>> (RedeliveryErrorHandler.java:361)
>>>> - This exchange is not handled so its marked as failed:
>>>> Exchange[Message:
>>>> JobDetail 'DEFAULT.quartz://omsSabaCourses/?cron=0+0+20+%3F+*+MON-SUN':
>>>> jobClass: 'org.apache.camel.component.quartz.CamelJob isStateful: false
>>>> isVolatile: false isDurable: false requestsRecovers: false]
>>>> DEBUG [DefaultQuartzScheduler_Worker-1]
>>>> (RedeliveryErrorHandler.java:361)
>>>> - This exchange is not handled so its marked as failed:
>>>> Exchange[Message:
>>>> JobDetail 'DEFAULT.quartz://omsSabaCourses/?cron=0+0+20+%3F+*+MON-SUN':
>>>> jobClass: 'org.apache.camel.component.quartz.CamelJob isStateful: false
>>>> isVolatile: false isDurable: false requestsRecovers: false]
>>>> DEBUG [DefaultQuartzScheduler_Worker-1]
>>>> (TransactionErrorHandler.java:127)
>>>> - Setting transaction to rollbackOnly due to exception being thrown:
>>>> org.springframework.jdbc.UncategorizedSQLException:
>>>> PreparedStatementCallback; uncategorized SQLException for SQL [select *
>>>> from RPV_DES_OMS_COURSES]; SQL state [null]; error code [17004]; Invalid
>>>> column type; nested exception is java.sql.SQLException: Invalid column
>>>> type
>>>> DEBUG [DefaultQuartzScheduler_Worker-1]
>>>> (TransactionErrorHandler.java:127)
>>>> - Setting transaction to rollbackOnly due to exception being thrown:
>>>> org.springframework.jdbc.UncategorizedSQLException:
>>>> PreparedStatementCallback; uncategorized SQLException for SQL [select *
>>>> from RPV_DES_OMS_COURSES]; SQL state [null]; error code [17004]; Invalid
>>>> column type; nested exception is java.sql.SQLException: Invalid column
>>>> type
>>>> DEBUG [DefaultQuartzScheduler_Worker-1] (TransactionTemplate.java:152) -
>>>> Initiating transaction rollback on application exception
>>>> org.apache.camel.spring.spi.TransactedRuntimeCamelException:
>>>> org.springframework.jdbc.UncategorizedSQLException:
>>>> PreparedStatementCallback; uncategorized SQLException for SQL [select *
>>>> from RPV_DES_OMS_COURSES]; SQL state [null]; error code [17004]; Invalid
>>>> column type; nested exception is java.sql.SQLException: Invalid column
>>>> type
>>>>       at
>>>> org.apache.camel.spring.spi.TransactionErrorHandler.wrapTransactedRuntimeException(TransactionErrorHandler.java:171)
>>>>       at
>>>> org.apache.camel.spring.spi.TransactionErrorHandler$1.doInTransactionWithoutResult(TransactionErrorHandler.java:121)
>>>>       at
>>>> org.springframework.transaction.support.TransactionCallbackWithoutResult.doInTransaction(TransactionCallbackWithoutResult.java:33)
>>>>       at
>>>> org.springframework.transaction.support.TransactionTemplate.execute(TransactionTemplate.java:128)
>>>>       at
>>>> org.apache.camel.spring.spi.TransactionErrorHandler.process(TransactionErrorHandler.java:86)
>>>>       at
>>>> org.apache.camel.processor.RedeliveryErrorHandler.processExchange(RedeliveryErrorHandler.java:186)
>>>>       at
>>>> org.apache.camel.processor.RedeliveryErrorHandler.processErrorHandler(RedeliveryErrorHandler.java:155)
>>>>       at
>>>> org.apache.camel.processor.RedeliveryErrorHandler.process(RedeliveryErrorHandler.java:88)
>>>>       at
>>>> org.apache.camel.processor.DefaultErrorHandler.process(DefaultErrorHandler.java:49)
>>>>       at
>>>> org.apache.camel.processor.DefaultChannel.process(DefaultChannel.java:148)
>>>>       at
>>>> org.apache.camel.processor.UnitOfWorkProcessor.processNext(UnitOfWorkProcessor.java:54)
>>>>       at
>>>> org.apache.camel.processor.DelegateProcessor.process(DelegateProcessor.java:48)
>>>>       at
>>>> org.apache.camel.processor.loadbalancer.QueueLoadBalancer.process(QueueLoadBalancer.java:41)
>>>>       at
>>>> org.apache.camel.component.quartz.QuartzEndpoint.onJobExecute(QuartzEndpoint.java:119)
>>>>       at
>>>> org.apache.camel.component.quartz.CamelJob.execute(CamelJob.java:32)
>>>>       at org.quartz.core.JobRunShell.run(JobRunShell.java:202)
>>>>       at
>>>> org.quartz.simpl.SimpleThreadPool$WorkerThread.run(SimpleThreadPool.java:525)
>>>> Caused by: org.springframework.jdbc.UncategorizedSQLException:
>>>> PreparedStatementCallback; uncategorized SQLException for SQL [select *
>>>> from RPV_DES_OMS_COURSES]; SQL state [null]; error code [17004]; Invalid
>>>> column type; nested exception is java.sql.SQLException: Invalid column
>>>> type
>>>>       at
>>>> org.springframework.jdbc.support.AbstractFallbackSQLExceptionTranslator.translate(AbstractFallbackSQLExceptionTranslator.java:83)
>>>>       at
>>>> org.springframework.jdbc.support.AbstractFallbackSQLExceptionTranslator.translate(AbstractFallbackSQLExceptionTranslator.java:80)
>>>>       at
>>>> org.springframework.jdbc.core.JdbcTemplate.execute(JdbcTemplate.java:607)
>>>>       at
>>>> org.springframework.jdbc.core.JdbcTemplate.execute(JdbcTemplate.java:619)
>>>>       at
>>>> org.apache.camel.component.sql.SqlProducer.process(SqlProducer.java:43)
>>>>       at
>>>> org.apache.camel.processor.SendProcessor$1.doInProducer(SendProcessor.java:81)
>>>>       at
>>>> org.apache.camel.processor.SendProcessor$1.doInProducer(SendProcessor.java:79)
>>>>       at
>>>> org.apache.camel.impl.ProducerCache.doInProducer(ProducerCache.java:141)
>>>>       at
>>>> org.apache.camel.processor.SendProcessor.process(SendProcessor.java:78)
>>>>       at
>>>> org.apache.camel.management.InstrumentationProcessor.process(InstrumentationProcessor.java:61)
>>>>       at
>>>> org.apache.camel.management.InstrumentationProcessor.process(InstrumentationProcessor.java:61)
>>>>       at
>>>> org.apache.camel.processor.RedeliveryErrorHandler.processExchange(RedeliveryErrorHandler.java:186)
>>>>       at
>>>> org.apache.camel.processor.RedeliveryErrorHandler.processErrorHandler(RedeliveryErrorHandler.java:155)
>>>>       at
>>>> org.apache.camel.processor.RedeliveryErrorHandler.process(RedeliveryErrorHandler.java:88)
>>>>       at
>>>> org.apache.camel.processor.DefaultErrorHandler.process(DefaultErrorHandler.java:49)
>>>>       at
>>>> org.apache.camel.processor.DefaultChannel.process(DefaultChannel.java:148)
>>>>       at org.apache.camel.processor.Pipeline.process(Pipeline.java:74)
>>>>       at
>>>> org.apache.camel.processor.RedeliveryErrorHandler.processExchange(RedeliveryErrorHandler.java:186)
>>>>       at
>>>> org.apache.camel.processor.RedeliveryErrorHandler.processErrorHandler(RedeliveryErrorHandler.java:155)
>>>>       at
>>>> org.apache.camel.processor.RedeliveryErrorHandler.process(RedeliveryErrorHandler.java:88)
>>>>       at
>>>> org.apache.camel.spring.spi.TransactionErrorHandler.access$101(TransactionErrorHandler.java:41)
>>>>       at
>>>> org.apache.camel.spring.spi.TransactionErrorHandler$1.doInTransactionWithoutResult(TransactionErrorHandler.java:114)
>>>>       ... 15 more
>>>> Caused by: java.sql.SQLException: Invalid column type
>>>>       at
>>>> oracle.jdbc.driver.DatabaseError.throwSqlException(DatabaseError.java:112)
>>>>       at
>>>> oracle.jdbc.driver.DatabaseError.throwSqlException(DatabaseError.java:146)
>>>>       at
>>>> oracle.jdbc.driver.DatabaseError.throwSqlException(DatabaseError.java:208)
>>>>       at
>>>> oracle.jdbc.driver.OraclePreparedStatement.setObjectCritical(OraclePreparedStatement.java:9262)
>>>>       at
>>>> oracle.jdbc.driver.OraclePreparedStatement.setObjectInternal(OraclePreparedStatement.java:8843)
>>>>       at
>>>> oracle.jdbc.driver.OraclePreparedStatement.setObjectInternal(OraclePreparedStatement.java:9565)
>>>>       at
>>>> oracle.jdbc.driver.OraclePreparedStatement.setObject(OraclePreparedStatement.java:9548)
>>>>       at
>>>> org.apache.camel.component.sql.SqlProducer$1.doInPreparedStatement(SqlProducer.java:50)
>>>>       at
>>>> org.springframework.jdbc.core.JdbcTemplate.execute(JdbcTemplate.java:591)
>>>>       ... 34 more
>>>> DEBUG [DefaultQuartzScheduler_Worker-1]
>>>> (AbstractPlatformTransactionManager.java:821) - Initiating transaction
>>>> rollback
>>>> DEBUG [DefaultQuartzScheduler_Worker-1]
>>>> (DataSourceTransactionManager.java:273) - Rolling back JDBC transaction
>>>> on
>>>> Connection [oracle.jdbc.driver.t4cconnect...@19f1bac]
>>>> DEBUG [DefaultQuartzScheduler_Worker-1]
>>>> (DataSourceTransactionManager.java:314) - Releasing JDBC Connection
>>>> [oracle.jdbc.driver.t4cconnect...@19f1bac] after transaction
>>>> DEBUG [DefaultQuartzScheduler_Worker-1] (DataSourceUtils.java:312) -
>>>> Returning JDBC Connection to DataSource
>>>>
>>>>
>>>> Any clues on this error ?
>>>>
>>>> Matt
>>>>
>>>>
>>>>
>>>>
>>>
>>> --
>>> View this message in context:
>>> http://www.nabble.com/sql-throwing-oracle-17004-ORA-17004-error-tp25955346p25957173.html
>>> Sent from the Camel - Users mailing list archive at Nabble.com.
>>>
>>>
>>
>>
>>
>> --
>> Claus Ibsen
>> Apache Camel Committer
>>
>> Open Source Integration: http://fusesource.com
>> Blog: http://davsclaus.blogspot.com/
>> Twitter: http://twitter.com/davsclaus
>>
>>
>
> --
> View this message in context: 
> http://www.nabble.com/sql-throwing-oracle-17004-ORA-17004-error-tp25955346p25967545.html
> Sent from the Camel - Users mailing list archive at Nabble.com.
>
>



-- 
Claus Ibsen
Apache Camel Committer

Open Source Integration: http://fusesource.com
Blog: http://davsclaus.blogspot.com/
Twitter: http://twitter.com/davsclaus

Reply via email to