Год назад я столкнулся с подобной проблемой, и мы исправили, используя следующие конфигурации.
Мы настроили фабрику соединений (AqQueueConnectionFactory) в axis2.xml
<!-- Oracle AQ Listener Start-->
<transportReceiver name="oracleaq" class="org.apache.axis2.transport.jms.JMSListener">
<parameter name="AqQueueConnectionFactory" locked="false">
<parameter name="java.naming.factory.initial" locked="false">oracle.jms.AQjmsInitialContextFactory</parameter>
<parameter name="db_url" locked="false">jdbc:oracle:thin:@hostname:port:schema</parameter>
<parameter name="java.naming.security.principal" locked="false">username</parameter>
<parameter name="java.naming.security.credentials" locked="false">password</parameter>
<parameter name="transport.jms.ConnectionFactoryJNDIName" locked="false">QueueConnectionFactory</parameter>
<parameter name="transport.jms.ConnectionFactoryType" locked="false">queue</parameter>
</parameter>
<parameter name="AqTopicConnectionFactory" locked="false">
<parameter name="java.naming.factory.initial" locked="false">oracle.jms.AQjmsInitialContextFactory</parameter>
<parameter name="db_url" locked="false">jdbc:oracle:thin:@hostname:port:schema</parameter>
<parameter name="java.naming.security.principal" locked="false">username</parameter>
<parameter name="java.naming.security.credentials" locked="false">password</parameter>
<parameter name="transport.jms.ConnectionFactoryJNDIName" locked="false">TopicConnectionFactory</parameter>
<parameter name="transport.jms.ConnectionFactoryType" locked="false">topic</parameter>
</parameter>
</transportReceiver>
<!-- Oracle AQ Listener End -->
Мынеобходимо перезапустить сервер после изменения axis2.xml и добавления следующего файла jar (aqapi-10.1.3.1.jar и его зависимостей) в папку lib.
В разделе Proxy, Parameters мы определилиКонфигурация очереди, которую прокси-сервер слушает.
<parameter name="transport.jms.DestinationType">queue</parameter>
<parameter name="transport.jms.Destination">Queues/QueueName</parameter>
<parameter name="transport.jms.ContentType">
<rules xmlns="">
<jmsProperty>contentType</jmsProperty>
<default>application/xml</default>
</rules>
</parameter>
<parameter name="transport.jms.ConnectionFactory">AqQueueConnectionFactory</parameter>
Как указано выше в axis2.xml, мы включили oracleaq как единое целое, если транспорт прокси-сервера.
После вышеуказанной настройкиГотово, мы можем слушать очереди / темы из Oracle AQ без каких-либо проблем.
Спасибо.