[ https://issues.apache.org/jira/browse/TAP5-2027?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]
Kalle Korhonen reassigned TAP5-2027: ------------------------------------ Assignee: Kalle Korhonen > EntityManagerObjectProvider always provides the initial EntityManger proxy > created > ---------------------------------------------------------------------------------- > > Key: TAP5-2027 > URL: https://issues.apache.org/jira/browse/TAP5-2027 > Project: Tapestry 5 > Issue Type: Bug > Components: tapestry-jpa > Affects Versions: 5.3.5, 5.3.6 > Reporter: John Coleman > Assignee: Kalle Korhonen > Labels: patch > Attachments: TapestryJPATest.zip > > > When persistence.xml defines multiple persistence units, classes injecting > EntityManager with @PersistenceContext(unitName=value crash because the > entities associated with the PU in configuration are not recognised at > runtime. > By placing trace in the code I established that the first EntityManager > injected gets injected to all my other service classes even though I use > different unitName= annotations. > The EntityManagerObjectProvider class contains a class variable proxy and > works like a singleton always injecting the first EntityManager proxy class > created for any later EntityManager injections. > The following code fixes the issue and is provided as-is, free and without > copyright or warranty. This is more like a refactor because I have also > replaced some depricated code. As a patch it also works just to remove the > proxy class member variable and the if (proxy == null) condition. -- This message was sent by Atlassian JIRA (v6.3.4#6332)