[ 
https://issues.apache.org/jira/browse/CAMEL-5191?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

XiaopengLi updated CAMEL-5191:
------------------------------

    Description: 
There is no JMX MBean for onException component, which makes statistics 
unavailable.

For example:
{noformat}

import javax.jms.ConnectionFactory;

import org.apache.camel.CamelContext;
import org.apache.camel.Exchange;
import org.apache.camel.Processor;
import org.apache.camel.builder.RouteBuilder;
import org.apache.camel.impl.DefaultCamelContext;

/**
 * A Camel Router
 */
public class OnExceptionRouteBuilder extends RouteBuilder {

        /**
         * A main() so we can easily run these routing rules in our IDE
         */
        public static void main(String... args) throws Exception {

                CamelContext camelContext = new DefaultCamelContext();

                ConnectionFactory jmsConnectionFactory = new 
org.apache.activemq.ActiveMQConnectionFactory(
                                "tcp://localhost:61616");
                camelContext.addComponent("jms",
                                org.apache.camel.component.jms.JmsComponent
                                                
.jmsComponent(jmsConnectionFactory));

                camelContext.addRoutes(new OnExceptionRouteBuilder());

                camelContext.start();

                Thread.sleep(100000000);
        }

        /**
         * Lets configure the Camel routing rules using Java code...
         */
        public void configure() {

                onException(javax.jms.JMSException.class).process(new 
Processor() {

                        @Override
                        public void process(Exchange exchange) throws Exception 
{
                                System.out.println("error");

                        }
                }).to("log:exception");

                from("timer://myTimer?period=2000&repeatCount=1").setBody()
                                .simple("hello JMS!").process(new Processor() {

                                        @Override
                                        public void process(Exchange exchange) 
throws Exception {
                                                System.out.println("We will 
write to ActiveMQ queue: "
                                                                + 
exchange.getIn().getBody(String.class));

                                        }
                                }).to("jms:queue:hello");

        }

}

{noformat}

And there are only two processors(We have four in the test case) in 
org.apache.camel/processors, none for onException branch. See the picture 
attached.


  was:
There is no JMX MBean for onException component, which makes statistics is not 
available.

For example:
{noformat}

import javax.jms.ConnectionFactory;

import org.apache.camel.CamelContext;
import org.apache.camel.Exchange;
import org.apache.camel.Processor;
import org.apache.camel.builder.RouteBuilder;
import org.apache.camel.impl.DefaultCamelContext;

/**
 * A Camel Router
 */
public class OnExceptionRouteBuilder extends RouteBuilder {

        /**
         * A main() so we can easily run these routing rules in our IDE
         */
        public static void main(String... args) throws Exception {

                CamelContext camelContext = new DefaultCamelContext();

                ConnectionFactory jmsConnectionFactory = new 
org.apache.activemq.ActiveMQConnectionFactory(
                                "tcp://localhost:61616");
                camelContext.addComponent("jms",
                                org.apache.camel.component.jms.JmsComponent
                                                
.jmsComponent(jmsConnectionFactory));

                camelContext.addRoutes(new OnExceptionRouteBuilder());

                camelContext.start();

                Thread.sleep(100000000);
        }

        /**
         * Lets configure the Camel routing rules using Java code...
         */
        public void configure() {

                onException(javax.jms.JMSException.class).process(new 
Processor() {

                        @Override
                        public void process(Exchange exchange) throws Exception 
{
                                System.out.println("error");

                        }
                }).to("log:exception");

                from("timer://myTimer?period=2000&repeatCount=1").setBody()
                                .simple("hello JMS!").process(new Processor() {

                                        @Override
                                        public void process(Exchange exchange) 
throws Exception {
                                                System.out.println("We will 
write to ActiveMQ queue: "
                                                                + 
exchange.getIn().getBody(String.class));

                                        }
                                }).to("jms:queue:hello");

        }

}

{noformat}

And there are only two processors(We have four in the test case) in 
org.apache.camel/processors, none for onException branch. See the picture 
attached.


    
> JMX statistics problem with onException()
> -----------------------------------------
>
>                 Key: CAMEL-5191
>                 URL: https://issues.apache.org/jira/browse/CAMEL-5191
>             Project: Camel
>          Issue Type: Bug
>          Components: camel-core
>    Affects Versions: 2.9.2
>         Environment: Camel 2.9.2 + Eclipse 3.6
>            Reporter: XiaopengLi
>            Priority: Minor
>         Attachments: screenshot-1.jpg
>
>
> There is no JMX MBean for onException component, which makes statistics 
> unavailable.
> For example:
> {noformat}
> import javax.jms.ConnectionFactory;
> import org.apache.camel.CamelContext;
> import org.apache.camel.Exchange;
> import org.apache.camel.Processor;
> import org.apache.camel.builder.RouteBuilder;
> import org.apache.camel.impl.DefaultCamelContext;
> /**
>  * A Camel Router
>  */
> public class OnExceptionRouteBuilder extends RouteBuilder {
>       /**
>        * A main() so we can easily run these routing rules in our IDE
>        */
>       public static void main(String... args) throws Exception {
>               CamelContext camelContext = new DefaultCamelContext();
>               ConnectionFactory jmsConnectionFactory = new 
> org.apache.activemq.ActiveMQConnectionFactory(
>                               "tcp://localhost:61616");
>               camelContext.addComponent("jms",
>                               org.apache.camel.component.jms.JmsComponent
>                                               
> .jmsComponent(jmsConnectionFactory));
>               camelContext.addRoutes(new OnExceptionRouteBuilder());
>               camelContext.start();
>               Thread.sleep(100000000);
>       }
>       /**
>        * Lets configure the Camel routing rules using Java code...
>        */
>       public void configure() {
>               onException(javax.jms.JMSException.class).process(new 
> Processor() {
>                       @Override
>                       public void process(Exchange exchange) throws Exception 
> {
>                               System.out.println("error");
>                       }
>               }).to("log:exception");
>               from("timer://myTimer?period=2000&repeatCount=1").setBody()
>                               .simple("hello JMS!").process(new Processor() {
>                                       @Override
>                                       public void process(Exchange exchange) 
> throws Exception {
>                                               System.out.println("We will 
> write to ActiveMQ queue: "
>                                                               + 
> exchange.getIn().getBody(String.class));
>                                       }
>                               }).to("jms:queue:hello");
>       }
> }
> {noformat}
> And there are only two processors(We have four in the test case) in 
> org.apache.camel/processors, none for onException branch. See the picture 
> attached.

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators: 
https://issues.apache.org/jira/secure/ContactAdministrators!default.jspa
For more information on JIRA, see: http://www.atlassian.com/software/jira

        

Reply via email to