Jean-Baptiste Onofré created AMQ-8032:
-----------------------------------------

             Summary: RuntimeConfigurationPlugin doesn't work with JDK11+
                 Key: AMQ-8032
                 URL: https://issues.apache.org/jira/browse/AMQ-8032
             Project: ActiveMQ
          Issue Type: Bug
          Components: Broker, Plugin
    Affects Versions: 5.16.0
            Reporter: Jean-Baptiste Onofré
            Assignee: Jean-Baptiste Onofré
             Fix For: 5.16.1


If the broker configuration contains runtimeConfigurationPlugin like this:
{code:java}
<broker ...>
 ...
         <plugins>
          <runtimeConfigurationPlugin checkPeriod="1000"/>
        </plugins>
  ...
</broker>{code}
the broker doesn't start due to:
{code:java}
Caused by: java.lang.NoClassDefFoundError: javax/xml/bind/JAXBException
        at 
org.apache.activemq.plugin.RuntimeConfigurationPlugin.installPlugin(RuntimeConfigurationPlugin.java:38)
        at 
org.apache.activemq.broker.BrokerService.addInterceptors(BrokerService.java:2505)
        at 
org.apache.activemq.broker.BrokerService.createBroker(BrokerService.java:2365)
        at 
org.apache.activemq.broker.BrokerService.getBroker(BrokerService.java:1053)
        at 
org.apache.activemq.broker.BrokerService.getAdminConnectionContext(BrokerService.java:2636)
        at 
org.apache.activemq.broker.BrokerService.startVirtualConsumerDestinations(BrokerService.java:2797)
        at 
org.apache.activemq.broker.BrokerService.startDestinations(BrokerService.java:2627)
        at 
org.apache.activemq.broker.BrokerService.doStartBroker(BrokerService.java:747)
        at 
org.apache.activemq.broker.BrokerService.startBroker(BrokerService.java:741)
        at 
org.apache.activemq.broker.BrokerService.start(BrokerService.java:644)
        at 
org.apache.activemq.xbean.XBeanBrokerService.afterPropertiesSet(XBeanBrokerService.java:73)
        at 
java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
        at 
java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
        at 
java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
        at java.base/java.lang.reflect.Method.invoke(Method.java:566)
        at 
org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.invokeCustomInitMethod(AbstractAutowireCapableBeanFactory.java:1748)
        at 
org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.invokeInitMethods(AbstractAutowireCapableBeanFactory.java:1685)
        at 
org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.initializeBean(AbstractAutowireCapableBeanFactory.java:1615)
        ... 27 more
Caused by: java.lang.ClassNotFoundException: javax.xml.bind.JAXBException
        at java.base/java.net.URLClassLoader.findClass(URLClassLoader.java:471)
        at java.base/java.lang.ClassLoader.loadClass(ClassLoader.java:588)
        at java.base/java.lang.ClassLoader.loadClass(ClassLoader.java:521)
        ... 45 more {code}
The problem is in the JAXB version in use. A simple workaround is to add JAXB 
(API and Core) in activemq/lib (I'm testing the fix).

So, it could be just a question of documentation to add JAXB jar in ActiveMQ in 
order to use runtimeConfigurationPlugin.



--
This message was sent by Atlassian Jira
(v8.3.4#803005)

Reply via email to