Uploaded image for project: 'Geronimo'
  1. Geronimo
  2. GERONIMO-255

GBeanMBean ManagedObject operations don't reliably replace GBean methods of the same name/signature

    XMLWordPrintableJSON

Details

    • Bug
    • Status: Closed
    • Critical
    • Resolution: Fixed
    • 1.0-M1
    • 1.0-M2
    • core
    • None

    Description

      When setting up operations for a GBean, the GBeanMBeanOperation are put into a set. This has 2 problems if the GBean implements one of the operations from AbstractManagedObject:

      1. Since GBeanMBeanOperation doesn't reimplement equals or hashCode, both operations get in the operationSet. It is entirely random which one gets installed as the real operation.

      2. Even if GBeanMBeanOperation is modified to implement equals and hashCode based on method signature, set.add doesn't replace equal elements. Therefore the method from the GBean overrides the method from AbstractManagedObject.

      I've fixed this by using a operationMap from signature to GBeanMBeanOperation, similar to the attributeMap. I'd appreciate a review.

      Attachments

        Activity

          People

            dain Dain Sundstrom
            djencks David Jencks
            Votes:
            0 Vote for this issue
            Watchers:
            0 Start watching this issue

            Dates

              Created:
              Updated:
              Resolved: