Uploaded image for project: 'JBoss Enterprise Application Platform 4 and 5'
  1. JBoss Enterprise Application Platform 4 and 5
  2. JBPAPP-8123

Missing interpretation of EJB-Annotation results in wrong call of dynamic method

    Details

    • Type: Bug
    • Status: Closed (View Workflow)
    • Priority: Major
    • Resolution: Done
    • Affects Version/s: EAP_EWP 5.1.2
    • Fix Version/s: EAP_EWP 5.2.0
    • Component/s: EJB
    • Labels:
    • Environment:

      java version "1.6.0_18"

    • Steps to Reproduce:
      Hide

      Invoke a method remotely via a plain interface on an annotated Session-Bean which implements the interface. The interface has multiple methods each having the same number of parameters (e.g. none) . The bean must not implement EJBObject.

      Show
      Invoke a method remotely via a plain interface on an annotated Session-Bean which implements the interface. The interface has multiple methods each having the same number of parameters (e.g. none) . The bean must not implement EJBObject.
    • Affects:
      Release Notes
    • Release Notes Text:
      Hide
      If a class did not implement EJBObject but was annotated as @Stateful, JBoss incorrectly considered the respective object not to be an EJB. This happened because the code failed to handle the returned EJB-annotation results. With this update, the EJB annotation is handled correctly and the object is identified as an EJB Bean as expected.
      Show
      If a class did not implement EJBObject but was annotated as @Stateful, JBoss incorrectly considered the respective object not to be an EJB. This happened because the code failed to handle the returned EJB-annotation results. With this update, the EJB annotation is handled correctly and the object is identified as an EJB Bean as expected.
    • Release Notes Docs Status:
      Documented as Resolved Issue

      Description

      when looking up a method for invocation in StatefulContainer.dynamicInvoke():522 jboss tries to determine if it's an EJB-Object-Method via SessionSpecContainer.isEjBObjectMethod(). This results wrongly in "false" if the class in question doesn't implement EJBObject but has e.g. a @Stateful annotation.

      Futher the method EJBContainer.getNonBridgeMethod() seems to be rather optimistic in trying to find the correct method only according to the number of parameters.

      This was tested with jboss-6.0.0.M1, but the corresponding code in trunk seems to be the same.

        Gliffy Diagrams

          Attachments

            Issue Links

              Activity

                People

                • Assignee:
                  mmusaji Mustafa Musaji
                  Reporter:
                  mmusaji Mustafa Musaji
                  Writer:
                  Eva Kopalova
                • Votes:
                  0 Vote for this issue
                  Watchers:
                  4 Start watching this issue

                  Dates

                  • Created:
                    Updated:
                    Resolved: