Uploaded image for project: 'Red Hat Fuse'
  1. Red Hat Fuse
  2. ENTESB-4061

Wrong camel management name (JMX) with SCR

XMLWordPrintable

    • Icon: Bug Bug
    • Resolution: Done
    • Icon: Major Major
    • jboss-fuse-6.3
    • jboss-fuse-6.1, jboss-fuse-6.2
    • Camel
    • None
    • % %
    • Sprint 5 - towards ER2

      If multiple CamelContexts are created from a single bundle using OSGi DS factory feature only one of the contexts are show on hawtio's Camel tab (camel_tab.png). This issue was reported in JIRA ENTESB-1641 and it still doesn't work.

      JMX tab shows both every context (jmx_tab.png) and all the routes. BUT, if routes in the factoried contexts have the same ID (should be OK as they are in separate contexts) only one of the routes is shown (jmx_tab_same_routeid_different_context.png). Same can be seen in Camel tab (camel_tab_same_routeid_different_context.png).

      The problem seems to be route's Camel management name in JMX which should be unique per context and bundle instance. Now it has the name of the factory and will be the same for every bundle instance and context created from it (foo1_attributes.png, foo2_attributes.png). This results in overlapping mbeans.

      Steps to reproduce:
      1. Build and install the attached projects.
      2. Create a Fabric profile with camel-scr-factory/src/main/fabric8 resources.
      3. Assign the profile on a container.
      4. To test overlapping mbeans, edit my.example.CamelScrFactory-*.properties and remove camelRouteId properties.

      The examples can also be run on Fuse 6.2.0. Just replace camel-scr and camel-core-osgi bundles with camel-scr feature in the profile (camel-scr feature is included in Fuse 6.2.0).

              janstey@redhat.com Jonathan Anstey
              rhn-support-qluo Joe Luo
              Viliam Kasala Viliam Kasala
              Votes:
              0 Vote for this issue
              Watchers:
              6 Start watching this issue

                Created:
                Updated:
                Resolved: