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

org.apache.camel.spi.RoutePolicy can't be used when exposed via OSGi

    XMLWordPrintable

Details

    • Bug
    • Resolution: Done
    • Major
    • fuse-7.9-GA
    • fuse-7.7-GA
    • Camel, Karaf
    • None
    • False
    • False
    • % %
    • Undefined
    • Hide

      1. Unzip the attached cronissue_osgi.zip file.

      2. The "cronpolicies" project exposes the "org.apache.camel.spi.RoutePolicy" interface as service named "quartz2/fiveMins".

      3. The "cronpolicies-test" project uses the exposed service:

      <reference id="remote-policy"
      interface="org.apache.camel.spi.RoutePolicy"
      filter="(osgi.jndi.service.name=quartz2/fiveMins)" />

      4. In order to run both projects "camel-quartz2" and "jndi" features must be installed.

      5. When "cronpolicies" project is deployed, the underlying service can be checked using jndi karaf commands.

      6. Running the "cronpolicies-test" project shows that "local policy" is working normally but "remote policy" is not.

      "cronpolicies-test" project have an extra local "org.apache.camel.routepolicy.quartz2.CronScheduledRoutePolicy" definition to check that is working locally, but is not working with the referenced service.

      Show
      1. Unzip the attached cronissue_osgi.zip file. 2. The "cronpolicies" project exposes the "org.apache.camel.spi.RoutePolicy" interface as service named "quartz2/fiveMins". 3. The "cronpolicies-test" project uses the exposed service: <reference id="remote-policy" interface="org.apache.camel.spi.RoutePolicy" filter="(osgi.jndi.service.name=quartz2/fiveMins)" /> 4. In order to run both projects "camel-quartz2" and "jndi" features must be installed. 5. When "cronpolicies" project is deployed, the underlying service can be checked using jndi karaf commands. 6. Running the "cronpolicies-test" project shows that "local policy" is working normally but "remote policy" is not. "cronpolicies-test" project have an extra local "org.apache.camel.routepolicy.quartz2.CronScheduledRoutePolicy" definition to check that is working locally, but is not working with the referenced service.

    Description

      Exposing the "org.apache.camel.routepolicy.quartz2.CronScheduledRoutePolicy" class using the "org.apache.camel.spi.RoutePolicy" interface service in OSGi is not working when is being used by other bundle.

       

      Requirement mention that policies (for example: trigger a route 5minutes, 1hour, etc.) should be encapsulated in one bundle and developers can use those policies in other bundles.

      Attachments

        1. cronissue_new.tar
          59 kB
          Freeman(Yue) Fang

        Activity

          People

            yfang@redhat.com Freeman(Yue) Fang
            emunoz@redhat.com Elkin Dario Munoz Duarte
            Juri Solovjov Juri Solovjov
            Votes:
            0 Vote for this issue
            Watchers:
            4 Start watching this issue

            Dates

              Created:
              Updated:
              Resolved: