You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@camel.apache.org by "Claus Ibsen (JIRA)" <ji...@apache.org> on 2012/04/29 16:11:50 UTC
[jira] [Resolved] (CAMEL-5191) JMX statistics problem with
onException()
[ https://issues.apache.org/jira/browse/CAMEL-5191?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]
Claus Ibsen resolved CAMEL-5191.
--------------------------------
Resolution: Not A Problem
Fix Version/s: 2.10.0
Assignee: Claus Ibsen
Working as designed. See this FAQ
http://camel.apache.org/why-is-my-processor-not-showing-up-in-jconsole.html
> 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
> Assignee: Claus Ibsen
> Priority: Minor
> Fix For: 2.10.0
>
> 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