Olá a todos
Estou tentando conectar via spring em um fila Oracle AQ mas estou tomando o seguinte erro:
2013-04-17 14:00:30,937 WARN [oracleAqJMSQueue-1] [jms.listener.DefaultMessageListenerContainer.handleListenerSetupFailure:818] - Setup of JMS message listener invoker failed for destination 'PIN.AQ_QUEUE' - trying to recover. Cause: JMS-120: Dequeue failed; nested exception is java.sql.SQLException: XMLTypeFactory can only work with OPAQUE
oracle.jms.AQjmsException: JMS-120: Dequeue failed
at oracle.jms.AQjmsError.throwEx(AQjmsError.java:315)
at oracle.jms.AQjmsConsumer.jdbcDequeue(AQjmsConsumer.java:1630)
at oracle.jms.AQjmsConsumer.receiveFromAQ(AQjmsConsumer.java:1037)
at oracle.jms.AQjmsConsumer.receiveFromAQ(AQjmsConsumer.java:962)
at oracle.jms.AQjmsConsumer.receiveFromAQ(AQjmsConsumer.java:940)
at oracle.jms.AQjmsConsumer.receive(AQjmsConsumer.java:792)
at org.springframework.jms.listener.AbstractPollingMessageListenerContainer.receiveMessage(AbstractPollingMessageListenerContainer.java:429)
at org.springframework.jms.listener.AbstractPollingMessageListenerContainer.doReceiveAndExecute(AbstractPollingMessageListenerContainer.java:310)
at org.springframework.jms.listener.AbstractPollingMessageListenerContainer.receiveAndExecute(AbstractPollingMessageListenerContainer.java:263)
at org.springframework.jms.listener.DefaultMessageListenerContainer$AsyncMessageListenerInvoker.invokeListener(DefaultMessageListenerContainer.java:1058)
at org.springframework.jms.listener.DefaultMessageListenerContainer$AsyncMessageListenerInvoker.executeOngoingLoop(DefaultMessageListenerContainer.java:1050)
at org.springframework.jms.listener.DefaultMessageListenerContainer$AsyncMessageListenerInvoker.run(DefaultMessageListenerContainer.java:947)
at java.lang.Thread.run(Thread.java:680)
Caused by: java.sql.SQLException: XMLTypeFactory can only work with OPAQUE
at oracle.xdb.XMLTypeFactory.create(XMLTypeFactory.java:69)
at oracle.jms.AQjmsConsumer.jdbcDequeue(AQjmsConsumer.java:1453)
o Oracle q estou rodando é o 11.2.0
Segue a configuração do Spring
<!-- Configurações do BRM -->
<bean id="dataSource" class="oracle.jdbc.pool.OracleConnectionPoolDataSource">
<property name="URL" value="jdbc:oracle:thin:@<servidor_name>:1521:TIBRM4" />
<property name="user" value="xxxx" />
<property name="password" value="xxxx" />
</bean>
<!--
<bean id="transactionManager"
class="org.springframework.jdbc.datasource.DataSourceTransactionManager"
lazy-init="true">
<property name="dataSource" ref="dataSource" />
</bean>
-->
<bean id="oracleAqConnFactory" factory-bean="oracleAqConnectionFactoryHandler"
factory-method="createConnectionFactory" />
<bean id="oracleAqConnectionFactoryHandler" class="br.com.oi.mail.brm.oracle.OracleAQQueueConnectionFactory">
<property name="dataSource" ref="dataSource" />
</bean>
<bean id="messageListener"
class="br.com.oi.mail.brm.oracle.OracleMessageListener">
</bean>
<bean id="cnt_queue" class="br.com.oi.mail.brm.oracle.OracleAQQueueDestinationFactory">
<property name="connectionFactory" ref="oracleAqConnFactory" />
<property name="queueUser" value="xxxx" />
<property name="queueName" value="AQ_QUEUE" />
</bean>
<bean id="oracleAqJMSQueue"
class="br.com.oi.mail.brm.oracle.OracleXMLMessageListenerContainer">
<property name="connectionFactory" ref="oracleAqConnFactory" />
<property name="destination" ref="cnt_queue" />
<property name="messageListener" ref="messageListener" />
<property name="sessionTransacted" value="true" />
</bean>
Alguem tem algum idéia ou já teve esse problema?