Uploaded image for project: 'WildFly'
  1. WildFly
  2. WFLY-82

Wrong injection made by container

    XMLWordPrintable

Details

    Description

      Description of problem:
      I got an issue in a salesforce case [1] about an incorrect injection.
      [1] https://c.na7.visual.force.com/apex/Case_View?id=500A000000CRqDG&sfdc.override=1

      Version-Release number of selected component (if applicable):

      How reproducible:
      To reproduce the case is required to have two PersistentUnit (PU), a Abstract class with a setter method to inject one PU and others classes inheriting the Abstract class and overriding the setter method to inject a different PU. In the runtime, the container inject twice the PU, first the correct PU and then the PU described in super class.

      I talked with the client (who is a Red Hat consultant) and we made the attached project based on a very simple JBoss example to reproduce the issue which happens in EAP6. I put a lot of 'println' to be very clear (even printing stacktrace to show who is calling). The most important files are:

      -> hibernate4Test/src/main/java/org/jboss/as/quickstart/hibernate4/data/BaseDAO.java – The abstract class with the default PU injection
      -> hibernate4Test/src/main/java/org/jboss/as/quickstart/hibernate4/data/MemberRepository.java – BaseDAO subclass
      -> hibernate4Test/src/main/java/org/jboss/as/quickstart/hibernate4/data/SecondaryMemberRepository.java – BaseDAO subclass
      -> hibernate4Test/src/main/java/org/jboss/as/quickstart/hibernate4/data/MemberListProducer.java – The class which inject the MemberListProducer and SecondaryMemberRepository
      -> hibernate4Test/src/main/resources/META-INF/persistence.xml – We changed the configuration here to each PU have a different entity mapped

      Steps to Reproduce:

      Actual results:
      The EM injection occurs twice, which the last one the wrong EM.

      Expected results:
      Just one injection occurs.

      Additional info:

      Attachments

        Activity

          People

            sdouglas1@redhat.com Stuart Douglas
            luan.cestari Luan Cestari (Inactive)
            Votes:
            0 Vote for this issue
            Watchers:
            5 Start watching this issue

            Dates

              Created:
              Updated:
              Resolved: