Hi

Have you added camel-management as a dependency.

On Tue, Jan 2, 2024 at 2:15 AM Steve973 <steve...@gmail.com> wrote:

> Hello.  I have a CamelSpringBootTest, and I am trying to test that my
> mbeans have been registered.  This is how I am trying to check:
>
> @CamelSpringTest
> @ContextConfiguration
> @DirtiesContext(classMode =
> DirtiesContext.ClassMode.AFTER_EACH_TEST_METHOD)
> class DynamicRouterJmxIT {
>
>     @Autowired
>     CamelContext camelContext;
>
>     @Test
>     void testExpectedMbeansExist() throws MalformedObjectNameException {
>         Assertions.assertTrue(camelContext.isStarted());
>         MBeanServer mBeanServer =
> camelContext.getManagementStrategy().getManagementAgent().getMBeanServer();
>         ObjectName name = new
>
> ObjectName("org.apache.camel:context=camelContext,type=routes,name=\"testRoute\"");
>         DynamicRouterControlService controlMbean =
> JMX.newMBeanProxy(mBeanServer, name,
> DynamicRouterControlService.class);
>         DynamicRouterFilterService filterMbean =
> JMX.newMBeanProxy(mBeanServer, name,
> DynamicRouterFilterService.class);
>         Assertions.assertNotNull(controlMbean);
>         Assertions.assertNotNull(filterMbean);
>     }
> }
>
> Here is the XML that I am using for it, called
> DynamicRouterJmxIT-context.xml:
>
> <beans xmlns="http://www.springframework.org/schema/beans";
>        xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance";
>        xsi:schemaLocation="
>        http://www.springframework.org/schema/beans
> http://www.springframework.org/schema/beans/spring-beans.xsd
>        http://camel.apache.org/schema/spring
> http://camel.apache.org/schema/spring/camel-spring.xsd";>
>
>   <camelContext id="camelContext" xmlns="
> http://camel.apache.org/schema/spring";>
>     <!-- enable JMX -->
>     <jmxAgent id="agent" disabled="false"/>
>     <route>
>       <from uri="direct:start" id="testRoute"/>
>       <to uri="dynamic-router:test"/>
>     </route>
>     <route>
>       <from uri="direct:subscribe-no-url-predicate"/>
>       <toD uri="dynamic-router-control:subscribe
>                       ?subscribeChannel=${headers.subscribeChannel}
>                       &amp;subscriptionId=${headers.subscriptionId}
>                       &amp;destinationUri=${headers.destinationUri}
>                       &amp;priority=${headers.priority}"/>
>     </route>
>   </camelContext>
> </beans>
>
>
> I keep getting this error:
>
> Cannot invoke "org.apache.camel.spi.ManagementAgent.getMBeanServer()"
> because the return value of
> "org.apache.camel.spi.ManagementStrategy.getManagementAgent()" is null
>
> What am I doing wrong?
>
> Thanks,
> Steve
>


-- 
Claus Ibsen
-----------------
@davsclaus
Camel in Action 2: https://www.manning.com/ibsen2

Reply via email to