[ 
https://issues.apache.org/jira/browse/TAP5-2027?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=15194769#comment-15194769
 ] 

ASF subversion and git services commented on TAP5-2027:
-------------------------------------------------------

Commit 0acf94ae073b321ec8579092c0324745ff235c05 in tapestry-5's branch 
refs/heads/master from kaosko
[ https://git-wip-us.apache.org/repos/asf?p=tapestry-5.git;h=0acf94a ]

FIXED - TAP5-2027: EntityManagerObjectProvider always provides the
initial EntityManger proxy created

- change the proxy member from a single instance EntityManager to a map
- refactor getOrCreateProxy: unsynchronize access to the map and only
make modifying the map synchronized
- candidate for merging to T5.3, issue was originally opened against
that version


> 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, 5.4
>            Reporter: John Coleman
>            Assignee: Kalle Korhonen
>             Fix For: 5.4.1
>
>         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)

Reply via email to