Sorry I'm also assuming that you added @Transactional to your jdo entity manager, and not on other classes. On Jan 17, 2016 22:13, "John D. Ament" <[email protected]> wrote:
> I'll take a closer look tomorrow but I believe you are creating a > non-proxyable bean here which is why interceptors aren't working. If you > get to it before I do, please try another interceptor on this class > > A proxyable bean should require a noargs constructor or one with @Inject > on it > On Jan 17, 2016 21:46, "Alex Roytman" <[email protected]> wrote: > >> Also, @Transactional behavior seems to be such a useful thing which should >> not be hardwired to EntityManager. Wouldn't it make sense to make >> transactional resource interface be configurable so that it would be easy >> to replicate transactional behavior for any resource as long as it provide >> access to its begin/commit/rollback/rollbackOnly methods? >> >> On Sun, Jan 17, 2016 at 9:12 PM Alex Roytman <[email protected]> wrote: >> >> > John, >> > >> > Here is how I create it: >> > >> > @ApplicationScoped >> > public class JdoEntityManagerProducer { >> > private final PersistenceManagerFactory gctrackJdoFactory = >> JDOFactory.getFactory(); >> > >> > @Produces >> > @GCTrack >> > @RequestScoped >> > protected EntityManager create() { >> > return new >> JdoEntityManagerImpl(gctrackJdoFactory.getPersistenceManager()); >> > } >> > >> > protected void closeEntityManager(@Disposes @GCTrack EntityManager >> entityManager) { >> > if (entityManager.isOpen()) { >> > entityManager.close(); >> > } >> > } >> > } >> > >> > >> > here is how I inject it >> > >> > @Inject @GCTrack private JdoEntityManager entityManager; >> > >> > >> > >> > On Sun, Jan 17, 2016 at 6:12 PM John D. Ament <[email protected]> >> > wrote: >> > >> >> Hi Alex, >> >> >> >> Just want to check, your usecase is something like >> >> >> >> public interface MyEntityManager extends EntityManager { >> >> >> >> } >> >> >> >> but then how are you creating instances of this object? >> >> >> >> John >> >> >> >> On Sun, Jan 17, 2016 at 5:45 PM Alex Roytman <[email protected]> >> wrote: >> >> >> >> > It looks like of a bean is injected with a field of type not >> >> EntityManager >> >> > but an interface extending it, transactional annotation does not >> work. >> >> Is >> >> > there any way to have transactional to recognize interfaces that >> extend >> >> > from EntityManager >> >> > >> >> > Thanks >> >> > Alex >> >> > >> >> >> > >> >
