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

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

    XMLWordPrintableJSON

Details

    • Improvement
    • Status: Closed
    • Minor
    • Resolution: Fixed
    • 1.2, 1.3
    • 1.3
    • common
    • None
    • 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

            sergey_beryozkin Sergey Beryozkin
            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