Hi, I'm checking out the JMX feature of Camel to monitor routes. And I got this exception:
JBossFuse:karaf@root> Exception in thread "SpringOsgiExtenderThread-4" org.apache.camel.RuntimeCamelException: javax.management.InstanceNotFoundException: org.apache.camel:name="monitorRoute",context=localhost/monitorCamelContext,type=routes at org.apache.camel.util.ObjectHelper.wrapRuntimeCamelException(ObjectHelper.java:1363) at org.apache.camel.spring.SpringCamelContext.onApplicationEvent(SpringCamelContext.java:120) at org.apache.camel.spring.CamelContextFactoryBean.onApplicationEvent(CamelContextFactoryBean.java:303) at org.springframework.context.event.SimpleApplicationEventMulticaster.multicastEvent(SimpleApplicationEventMulticaster.java:96) at org.springframework.context.support.AbstractApplicationContext.publishEvent(AbstractApplicationContext.java:334) at org.springframework.context.support.AbstractApplicationContext.finishRefresh(AbstractApplicationContext.java:948) at org.springframework.osgi.context.support.AbstractOsgiBundleApplicationContext.finishRefresh(AbstractOsgiBundleApplicationContext.java:235) at org.springframework.osgi.context.support.AbstractDelegatedExecutionApplicationContext$4.run(AbstractDelegatedExecutionApplicationContext.java:358) at org.springframework.osgi.util.internal.PrivilegedUtils.executeWithCustomTCCL(PrivilegedUtils.java:85) at org.springframework.osgi.context.support.AbstractDelegatedExecutionApplicationContext.completeRefresh(AbstractDelegatedExecutionApplicationContext.java:320) at org.springframework.osgi.extender.internal.dependencies.startup.DependencyWaiterApplicationContextExecutor$CompleteRefreshTask.run(DependencyWaiterApplicationContextExecutor.java:132) at java.lang.Thread.run(Thread.java:745) Caused by: javax.management.InstanceNotFoundException: org.apache.camel:name="monitorRoute",context=localhost/monitorCamelContext,type=routes at com.sun.jmx.interceptor.DefaultMBeanServerInterceptor.getMBean(DefaultMBeanServerInterceptor.java:1095) at com.sun.jmx.interceptor.DefaultMBeanServerInterceptor.getAttribute(DefaultMBeanServerInterceptor.java:643) at com.sun.jmx.mbeanserver.JmxMBeanServer.getAttribute(JmxMBeanServer.java:678) at org.apache.camel.component.jmx.JMXMonitorConsumer.convertNumberToAttributeType(JMXMonitorConsumer.java:109) at org.apache.camel.component.jmx.JMXMonitorConsumer.addNotificationListener(JMXMonitorConsumer.java:59) at org.apache.camel.component.jmx.JMXConsumer.doStart(JMXConsumer.java:109) at org.apache.camel.support.ServiceSupport.start(ServiceSupport.java:61) at org.apache.camel.impl.DefaultCamelContext.startService(DefaultCamelContext.java:1929) at org.apache.camel.impl.DefaultCamelContext.doStartOrResumeRouteConsumers(DefaultCamelContext.java:2223) at org.apache.camel.impl.DefaultCamelContext.doStartRouteConsumers(DefaultCamelContext.java:2159) at org.apache.camel.impl.DefaultCamelContext.safelyStartRouteServices(DefaultCamelContext.java:2089) at org.apache.camel.impl.DefaultCamelContext.doStartOrResumeRoutes(DefaultCamelContext.java:1868) at org.apache.camel.impl.DefaultCamelContext.doStartCamel(DefaultCamelContext.java:1740) at org.apache.camel.impl.DefaultCamelContext.doStart(DefaultCamelContext.java:1579) at org.apache.camel.support.ServiceSupport.start(ServiceSupport.java:61) at org.apache.camel.impl.DefaultCamelContext.start(DefaultCamelContext.java:1547) at org.apache.camel.spring.SpringCamelContext.maybeStart(SpringCamelContext.java:221) at org.apache.camel.spring.SpringCamelContext.onApplicationEvent(SpringCamelContext.java:118) ... 10 more Here is a simple Camel context I got from the "Apache Camel Developer's Cookbook": <?xml version="1.0" encoding="UTF-8"?> <beans xmlns="http://www.springframework.org/schema/beans" xmlns:camel="http://camel.apache.org/schema/spring" 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="monitorCamelContext" xmlns="http://camel.apache.org/schema/spring"> <jmxAgent id="agent" connectorPort="11223" createConnector="false" usePlatformMBeanServer="true" serviceUrlPath="/jmxrmi/camel" loadStatisticsEnabled="true" statisticsLevel="All"/> <route id="monitorRoute"> <from uri="timer:foo?period=20000" /> <transform> <simple>Monitoring ${body}</simple> </transform> <log message="${body}"/> <to uri="mock:result"/> </route> <route id="jmxMonitor"> <from uri="jmx:platform?objectDomain=org.apache.camel&key.context=localhost/monitorCamelContext&key.type=routes&key.name="monitorRoute"&monitorType=counter&observedAttribute=ExchangesCompleted&initThreshold=0&granularityPeriod=500&offset=1&differenceMode=false"/> <log message="JMX provides: ${body}"/> <to uri="mock:monitor"/> </route> </camelContext> </beans> Thanks. -- View this message in context: http://camel.465427.n5.nabble.com/javax-management-InstanceNotFoundException-tp5767072.html Sent from the Camel - Users mailing list archive at Nabble.com.