Из wildfly11 подключитесь к очереди HornetQ 2.3.0CR1 в Jboss7.2 с помощью mdb
Я не могу запустить wildfly11 для подключения через mdb к очереди jboss7.2.
- Я пробовал простое удаленное соединение (Netty) Сервер и клиент не совместимы.
[org.apache.activemq.artemis.ra] (default-threads - 1) AMQ154003: Невозможно повторно подключить org.apache.activemq.artemis.ra.inflow.ActiveMQActivationSpec(ra=org.wildfly.extension.messaging.activemq.ActiveMQResourceAdapter@b2ed35d1 destination=jms/queue/teszt destinationType=javax.jms.Queue ack= Автоматическое подтверждение длительности =false clientID=null user=null maxSession=15): ActiveMQException[errorType=INCOMPATIBLE_CLIENT_SERVER_VERSIONS message=null]
Я пропатчил jboss7.2 hornetq для поддержки клиента 123. (просто файл свойств в банке:)) Это работает, но я чувствую, что это не хорошее решение. Это был просто зонд.
Я пытался обновить jboss7.2 hornetq 2.3.0CR1 до 2.3.0CR2. Но сборка не удалась, потому что какая-то константа - это другое место.
Я искал адаптер ресурсов от mvnreposirory. (hornetq-ra-2.3.0.CR1.jar) MDB не видит
ОШИБКА [org.jboss.as.controller.management-operation] (поток загрузки контроллера) WFLYCTL0013: сбой операции ("развертывание") - адрес: ([("развертывание" => "jms-receive-0.0.1-SNAPSHOT.war")]) - описание ошибки: { "WFLYCTL0412: необходимые службы не установлены:" => ["jboss.ra.hornetq-ra"], "WFLYCTL0180: службы с отсутствующими / недоступными зависимостями " => ["jboss.deployment.unit.\"jms-receive-0.0.1-SNAPSHOT.war\".component.TesztMdb.CREATE отсутствует [jboss.ra.hornetq-ra]"] }
- Я попытался создать jmsbridge в jboss7.2 для wildfly11, но соединение не удалось, и я думаю, что лучшее решение, если клиент подключиться к серверу, а не наоборот.
Ресурсный адаптер: wildfly11
<subsystem xmlns="urn:jboss:domain:resource-adapters:5.0">
<resource-adapters>
<resource-adapter id="hornetq-ra">
<archive>
hornetq-ra-2.3.0.CR1.jar
</archive>
<transaction-support>XATransaction</transaction-support>
<config-property name="ConnectionParameters"> host=localhost;port=6955
</config-property>
<config-property name="ConnectorClassName">
org.hornetq.core.remoting.impl.netty.NettyConnectorFactory
</config-property>
<connection-definitions>
<connection-definition class-name="org.hornetq.ra.HornetQRAManagedConnectionFactory" jndi-name="java:/FluxFactory" enabled="true" use-java-context="true" pool-name="Session" use-ccm="true">
<config-property name="SessionDefaultType">
javax.jms.Queue
</config-property>
<config-property name="UseTryLock">
0
</config-property>
<xa-pool>
<min-pool-size>0</min-pool-size>
<max-pool-size>10</max-pool-size>
<prefill>false</prefill>
<use-strict-min>false</use-strict-min>
<flush-strategy>FailingConnectionOnly</flush-strategy>
<pad-xid>false</pad-xid>
<wrap-xa-resource>true</wrap-xa-resource>
</xa-pool>
</connection-definition>
</connection-definitions>
</resource-adapter>
</resource-adapters>
</subsystem>
<mdb>
<resource-adapter-ref resource-adapter-name="hornetq-ra"/>
<bean-instance-pool-ref pool-name="mdb-strict-max-pool"/>
</mdb>
5. bridge jboss7.2 side
<jms-bridge name="jms-bridge-name">
<source>
<connection-factory name="ConnectionFactory"/>
<destination name="jms/queue/teszt"/>
</source>
<target>
<connection-factory name="jms/RemoteConnectionFactory"/>
<destination name="jms/queue/teszt"/>
<!-- jmsuser with the same password is registered in ApplicationRealm with permission to consume/send messages -->
<user>MYUSER</user>
<password>MYPASS</password>
<context>
<!-- The username and password must be added to the context to allow remote registry lookup -->
<property key="java.naming.factory.initial" value="org.jboss.naming.remote.client.InitialContextFactory"/>
<property key="java.naming.provider.url" value="http-remoting://localhost:8080"/>
<property key="java.naming.security.principal" value="halcsiapp"/>
<property key="java.naming.security.credentials" value="Alma123-"/>
</context>
</target>
<quality-of-service>ONCE_AND_ONLY_ONCE</quality-of-service>
<failure-retry-interval>10000</failure-retry-interval>
<max-retries>10</max-retries>
<max-batch-size>500</max-batch-size>
<max-batch-time>50</max-batch-time>
<add-messageID-in-header>true</add-messageID-in-header>
</jms-bridge>