Jms Connection с использованием Apache camel

Я пытаюсь установить соединение с JMS, используя Apache Camel, сервер использует протокол Jnp. Но при этом я получаю исключения. Нужно помогите, если я что-то упускаю или делаю что-то не так. У меня есть JMS API jar-зависимость в pom.

Стек технологий:

  • Jboss Fuse 6.3
  • Apache Camel (для интеграции)

Чертеж:

<bean class = "org.springframework.jndi.JndiTemplate" 
 id = "remoteJndiTemplate">
    <property name = "environment">
        <props>
            <prop key = "java.naming.provider.url">jnp://x.x.x.x:yyyy</prop>
            <prop key = "java.naming.factory.url.pkgs">org.jnp.interfaces:org.jboss.naming</prop>
            <prop key = "java.naming.factory.initial">org.jnp.interfaces.NamingContextFactory</prop>
        </props>
    </property>
</bean>
<bean class = "org.springframework.jndi.JndiObjectFactoryBean"
    id = "remoteConnectionFactory" init-method = "afterPropertiesSet">
    <property name = "jndiTemplate" ref = "remoteJndiTemplate"/>
    <property name = "jndiName" value = "ConnectionFactory"/>
    <property name = "lookupOnStartup" value = "false"/>
    <!-- <property name = "proxyInterface" value = "javax.jms.QueueConnectionFactory"/> -->
    <property name = "expectedType" value = "javax.jms.QueueConnectionFactory"/>
</bean>
<bean factory-method = "getObject"
    factory-ref = "remoteConnectionFactory" id = "jmsInConnectionFactory"/>
<bean class = "org.apache.camel.component.jms.JmsComponent" id = "jmsComponent">
    <property name = "configuration">
        <bean class = "org.apache.camel.component.jms.JmsConfiguration">
            <property name = "connectionFactory" ref = "jmsInConnectionFactory"/>
        </bean>
    </property>
</bean> 

Исключение :

org.osgi.service.blueprint.container.ComponentDefinitionException: Unable to initialize bean remoteConnectionFactory
Caused by: java.lang.IllegalArgumentException: interface javax.jms.QueueConnectionFactory is not visible from class loader
Пользовательский скаляр GraphQL
Пользовательский скаляр GraphQL
Листовые узлы системы типов GraphQL называются скалярами. Достигнув скалярного типа, невозможно спуститься дальше по иерархии типов. Скалярный тип...
Как вычислять биты и понимать побитовые операторы в Java - объяснение с примерами
Как вычислять биты и понимать побитовые операторы в Java - объяснение с примерами
В компьютерном программировании биты играют важнейшую роль в представлении и манипулировании данными на двоичном уровне. Побитовые операции...
Поднятие тревоги для долго выполняющихся методов в Spring Boot
Поднятие тревоги для долго выполняющихся методов в Spring Boot
Приходилось ли вам сталкиваться с требованиями, в которых вас могли попросить поднять тревогу или выдать ошибку, когда метод Java занимает больше...
Полный курс Java для разработчиков веб-сайтов и приложений
Полный курс Java для разработчиков веб-сайтов и приложений
Получите сертификат Java Web и Application Developer, используя наш курс.
0
0
217
1

Ответы 1

jnp - это служба именования JNDI, используемая в JBoss ». Я думаю, что приведенный ниже тестовый пример может помочь вам в дальнейшем. activemq-unit с использованием Spring JNDI

Касательно

java.lang.IllegalArgumentException: interface javax.jms.QueueConnectionFactory is not visible from class loader

это похоже на другую проблему.

Другие вопросы по теме