[jboss-jira] [JBoss JIRA] Updated: (JBAS-8815) Regression in Hibernate session/sessionfactory injection
Shelly McGowan (JIRA)
jira-events at lists.jboss.org
Tue Aug 9 22:27:34 EDT 2011
[ https://issues.jboss.org/browse/JBAS-8815?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]
Shelly McGowan updated JBAS-8815:
---------------------------------
Assignee: Shelly McGowan (was: Scott Marlow)
Changes for JBAS-8563 were reverted and the above-referenced tests are passing. Full test suite and TCK runs in progress. Assigning to me to track the test results and will Resolve accordingly.
> Regression in Hibernate session/sessionfactory injection
> --------------------------------------------------------
>
> Key: JBAS-8815
> URL: https://issues.jboss.org/browse/JBAS-8815
> Project: Legacy JBoss Application Server 6
> Issue Type: Task
> Security Level: Public(Everyone can see)
> Affects Versions: 6.1.0
> Reporter: Scott Marlow
> Assignee: Shelly McGowan
> Priority: Blocker
> Fix For: 6.1.0
>
>
> Regression caused by fix for JBAS-8563. This impacts the Hibernate specific support mentioned here http://bill.burkecentral.com/2007/07/06/co-existence-with-hibernate-jpa-and-ejb3.
> The regression is that the following will no longer work:
> @PersistenceContext(unitName="custDb") org.hibernate.Session session;
> @PersistenceUnit(unitName="custDb") SessionFactory factory;
> The workaround is to instead use the JPA 2.0 EntityManager.unwrap(Session.class).
> In the following exception, at the point of error. We are in org.jboss.injection.injector.util.FieldInjectionPoint.set() with:
> java.lang.reflect.Field field = org.hibernate.Session org.jboss.ejb3.test.longlived.HibernateShoppingCartBean.em
> this.accessibleObject.type = interface org.hibernate.Session
> target is instance of org.jboss.ejb3.test.longlived.HibernateShoppingCartBean
> value is instance of org.jboss.jpa.util.ExtendedEntityManager
> org.jboss.ejb3.test.longlived.unit.EntityUnitTestCase.testHibernateLongLivedSession fails with error:
> 2011-01-18 08:39:08,248 ERROR [org.jboss.ejb3.proxy.impl.factory.session.stateful.StatefulSessionProxyFactoryBase] (WorkerThread#1[127.0.0.1:54163]) Could not obtain new Session ID from SFSB Container: javax.ejb.EJBException: java.lang.IllegalArgumentException: failed to set value ExtendedEntityManager: persistence.unit:unitName=longlived-test.jar#tempdb on field org.hibernate.Session org.jboss.ejb3.test.longlived.HibernateShoppingCartBean.em
> at org.jboss.ejb3.cache.simple.SimpleStatefulCache.create(SimpleStatefulCache.java:438) [:1.7.19-SNAPSHOT]
> at org.jboss.ejb3.stateful.StatefulContainer.createSession(StatefulContainer.java:440) [:1.7.19-SNAPSHOT]
> at org.jboss.ejb3.session.SessionContainer.createSession(SessionContainer.java:677) [:1.7.19-SNAPSHOT]
> at org.jboss.ejb3.proxy.impl.factory.session.stateful.StatefulSessionProxyFactoryBase.getNewSessionId(StatefulSessionProxyFactoryBase.java:227) [:1.0.11]
> at org.jboss.ejb3.proxy.impl.factory.session.stateful.StatefulSessionProxyFactoryBase.createProxyBusiness(StatefulSessionProxyFactoryBase.java:140) [:1.0.11]
> at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) [:1.6.0_23]
> at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39) [:1.6.0_23]
> at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25) [:1.6.0_23]
> at java.lang.reflect.Method.invoke(Method.java:597) [:1.6.0_23]
> at org.jboss.aop.Dispatcher.invoke(Dispatcher.java:121) [jboss-aop.jar:2.2.1.GA]
> at org.jboss.aspects.remoting.AOPRemotingInvocationHandler.invoke(AOPRemotingInvocationHandler.java:82) [:1.0.1.GA]
> at org.jboss.remoting.ServerInvoker.invoke(ServerInvoker.java:898) [:]
> at org.jboss.remoting.transport.socket.ServerThread.completeInvocation(ServerThread.java:791) [:]
> at org.jboss.remoting.transport.socket.ServerThread.processInvocation(ServerThread.java:744) [:]
> at org.jboss.remoting.transport.socket.ServerThread.dorun(ServerThread.java:548) [:]
> at org.jboss.remoting.transport.socket.ServerThread.run(ServerThread.java:234) [:]
> Caused by: java.lang.IllegalArgumentException: failed to set value ExtendedEntityManager: persistence.unit:unitName=longlived-test.jar#tempdb on field org.hibernate.Session org.jboss.ejb3.test.longlived.HibernateShoppingCartBean.em
> at org.jboss.injection.injector.util.FieldInjectionPoint.set(FieldInjectionPoint.java:73) [:1.0.0-alpha-6]
> at org.jboss.injection.injector.EEInjector.inject(EEInjector.java:159) [:1.0.0-alpha-6]
> at org.jboss.injection.injector.EEInjector.inject(EEInjector.java:134) [:1.0.0-alpha-6]
> at org.jboss.injection.injector.EEInjector.inject(EEInjector.java:82) [:1.0.0-alpha-6]
> at org.jboss.injection.manager.core.DefaultInjectionContext.proceed(DefaultInjectionContext.java:58) [:1.0.0-alpha-6]
> at org.jboss.injection.manager.core.DefaultInjectionManager.inject(DefaultInjectionManager.java:58) [:1.0.0-alpha-6]
> at org.jboss.injection.manager.core.DefaultInjectionManager.inject(DefaultInjectionManager.java:64) [:1.0.0-alpha-6]
> at org.jboss.ejb3.injection.InjectionInvocation.invokeTarget(InjectionInvocation.java:140) [:1.7.19-SNAPSHOT]
> at org.jboss.ejb3.injection.InjectionInvocation.invokeNext(InjectionInvocation.java:125) [:1.7.19-SNAPSHOT]
> at org.jboss.ejb3.core.context.CurrentInvocationContextInterceptor.invoke(CurrentInvocationContextInterceptor.java:47) [:1.7.19-SNAPSHOT]
> at org.jboss.ejb3.injection.InjectionInvocation.invokeNext(InjectionInvocation.java:116) [:1.7.19-SNAPSHOT]
> at org.jboss.aspects.currentinvocation.CurrentInvocationInterceptor.invoke(CurrentInvocationInterceptor.java:67) [:1.0.1]
> at org.jboss.ejb3.injection.InjectionInvocation.invokeNext(InjectionInvocation.java:116) [:1.7.19-SNAPSHOT]
> at org.jboss.ejb3.EJBContainer.injectBeanContext(EJBContainer.java:1363) [:1.7.19-SNAPSHOT]
> at org.jboss.ejb3.stateful.StatefulContainer.createBeanContext(StatefulContainer.java:184) [:1.7.19-SNAPSHOT]
> at org.jboss.ejb3.stateful.StatefulContainer.create(StatefulContainer.java:136) [:1.7.19-SNAPSHOT]
> at org.jboss.ejb3.cache.simple.SimpleStatefulCache.create(SimpleStatefulCache.java:417) [:1.7.19-SNAPSHOT]
> ... 15 more
--
This message is automatically generated by JIRA.
For more information on JIRA, see: http://www.atlassian.com/software/jira
More information about the jboss-jira
mailing list