Uploaded image for project: 'CXF Distributed OSGi'
  1. CXF Distributed OSGi
  2. DOSGI-94

Enhancement to deal with registered services that might have been proxied (eg. CGLIB proxies).

    XMLWordPrintableJSON

    Details

    • Type: Improvement
    • Status: Closed
    • Priority: Minor
    • Resolution: Fixed
    • Affects Version/s: 1.2, 1.3
    • Fix Version/s: 1.3
    • Component/s: common
    • Labels:
      None
    • Environment:

      Felix 3.2.0 + Apache Aries blueprint + CXF Dosgi

      Description

      In my local environment I use Apache Aries and now also added CXF DOSGI.
      I noticed that the greeter example works fine but my own services, which are registered by aries blueprint
      did not get exported by CXF DOSGI.

      I think blueprint enhances the original services by weaving in a new class which has as superclass the original, which then causes problems for cxf-dosgi.

      The class ClassUtils in dsw is where the enhancement can take place. This class checks the provided service class to see if it implements the registered interface, but if this service class itself is a proxy to the real service class the it always returns null.

      The fix for this is simply to recurse up all superclasses and test each superclass to see if it implements said interface.

        Attachments

        1. ClassUtils.java
          3 kB
          Ivanhoe Abrahams
        2. ClassUtilsTest.java
          2 kB
          Ivanhoe Abrahams

          Activity

            People

            • Assignee:
              sergey_beryozkin Sergey Beryozkin
              Reporter:
              ivanhoe.abrahams Ivanhoe Abrahams
            • Votes:
              0 Vote for this issue
              Watchers:
              1 Start watching this issue

              Dates

              • Created:
                Updated:
                Resolved:

                Time Tracking

                Estimated:
                Original Estimate - 3h
                3h
                Remaining:
                Remaining Estimate - 3h
                3h
                Logged:
                Time Spent - Not Specified
                Not Specified