Uploaded image for project: 'Camel'
  1. Camel
  2. CAMEL-10226

camel-jms ignores connection pool settings in spring-boot deployment

    XMLWordPrintableJSON

Details

    • Improvement
    • Status: Resolved
    • Major
    • Resolution: Fixed
    • None
    • 2.18.0
    • camel-jms
    • None
    • Unknown

    Description

      The camel jms-component (particularly the camel-activemq, that inherits from it) cannot be fully configured in a spring-boot environment.

      When using eg. the spring-xml configuration (spring-boot properties are not yet available in the activemq component):

      <bean id="amq" class="org.apache.activemq.camel.component.ActiveMQComponent">
          <property name="userName" value="XXX"/>
          <property name="password" value="YYY"/>
          <property name="brokerURL" value="ZZZ"/>
      </bean>
      

      The properties userName, password and brokerURL are simply ignored.

      The reason is that spring-boot defines its own connection factory that is automatically bound to the application context when ActiveMQ is on the classpath (https://github.com/spring-projects/spring-boot/blob/master/spring-boot-autoconfigure/src/main/java/org/springframework/boot/autoconfigure/jms/activemq/ActiveMQConnectionFactoryConfiguration.java#L41-L71).

      And the JMS component is programmed to use any connection factory that is available in the spring application context: https://github.com/apache/camel/blob/master/components/camel-jms/src/main/java/org/apache/camel/component/jms/JmsComponent.java#L151-L155.

      This prevents the configuration object to create a new connection factory with the specified properties, so they are ignored. The component always use an in-memory broker (whenever the creation of the JmsConfiguration object is not overridden by the user).

      I can work to fix this behavior, but I need to know if the lookup in the application context (it is located in the camel source, even if it affects activemq) is historically related to some use case or it can be safely removed.

      Attachments

        Activity

          People

            nferraro Nicola Ferraro
            nferraro Nicola Ferraro
            Votes:
            0 Vote for this issue
            Watchers:
            3 Start watching this issue

            Dates

              Created:
              Updated:
              Resolved: