You're right: cold-deploying the app I don't get anymore an IllegalWhatever exception due to an already-started transaction from the non-seam servlet.
But now I get the following when accessing a parametrized page (eg.: thepage.jsf?c=3) from the very same page but different parameter (eg: from thepage.jsf?c=1) AND the switch happens in the very same HTTP connection (ie: the browser and tomcat are using an "http persistent connection"). | type Exception report | | message | | description The server encountered an internal error () that prevented it from fulfilling this request. | | exception | | javax.servlet.ServletException: could not register synchronization with JTA TransactionManager | org.jboss.seam.servlet.SeamExceptionFilter.doFilter(SeamExceptionFilter.java:52) | org.jboss.web.tomcat.filters.ReplyHeaderFilter.doFilter(ReplyHeaderFilter.java:96) | | | root cause | | javax.servlet.ServletException: could not register synchronization with JTA TransactionManager | javax.faces.webapp.FacesServlet.service(FacesServlet.java:152) | it.edlui.confesercenti.web.filter.ClientCacheDisableFilter.doFilter(ClientCacheDisableFilter.java:43) | org.jboss.seam.servlet.SeamRedirectFilter.doFilter(SeamRedirectFilter.java:23) | org.jboss.seam.servlet.SeamExceptionFilter.doFilter(SeamExceptionFilter.java:45) | org.jboss.web.tomcat.filters.ReplyHeaderFilter.doFilter(ReplyHeaderFilter.java:96) | | | root cause | | org.hibernate.TransactionException: could not register synchronization with JTA TransactionManager | org.hibernate.jdbc.JDBCContext.registerSynchronizationIfPossible(JDBCContext.java:174) | org.hibernate.impl.SessionImpl.checkTransactionSynchStatus(SessionImpl.java:1824) | org.hibernate.impl.SessionImpl.getSessionFactory(SessionImpl.java:1669) | org.hibernate.ejb.AbstractEntityManagerImpl.markAsRollback(AbstractEntityManagerImpl.java:388) | org.hibernate.ejb.AbstractEntityManagerImpl.throwPersistenceException(AbstractEntityManagerImpl.java:540) | org.hibernate.ejb.AbstractEntityManagerImpl.throwPersistenceException(AbstractEntityManagerImpl.java:562) | org.hibernate.ejb.AbstractEntityManagerImpl.joinTransaction(AbstractEntityManagerImpl.java:513) | org.hibernate.ejb.AbstractEntityManagerImpl.postInit(AbstractEntityManagerImpl.java:71) | org.hibernate.ejb.EntityManagerImpl.<init>(EntityManagerImpl.java:35) | org.hibernate.ejb.EntityManagerFactoryImpl.createEntityManager(EntityManagerFactoryImpl.java:37) | org.hibernate.ejb.EntityManagerFactoryImpl.createEntityManager(EntityManagerFactoryImpl.java:32) | org.jboss.ejb3.entity.InjectedEntityManagerFactory.createEntityManager(InjectedEntityManagerFactory.java:76) | org.jboss.seam.core.ManagedPersistenceContext.create(ManagedPersistenceContext.java:53) | sun.reflect.GeneratedMethodAccessor256.invoke(Unknown Source) | sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25) | java.lang.reflect.Method.invoke(Method.java:585) | org.jboss.seam.util.Reflections.invoke(Reflections.java:13) | org.jboss.seam.util.Reflections.invokeAndWrap(Reflections.java:32) | org.jboss.seam.Component.callComponentMethod(Component.java:1166) | org.jboss.seam.Component.callCreateMethod(Component.java:1151) | org.jboss.seam.Component.newInstance(Component.java:1140) | org.jboss.seam.Component.getInstance(Component.java:1088) | org.jboss.seam.Component.getInstance(Component.java:1071) | org.jboss.seam.Component.getInstanceToInject(Component.java:1195) | org.jboss.seam.Component.injectFields(Component.java:879) | org.jboss.seam.Component.inject(Component.java:686) | org.jboss.seam.interceptors.BijectionInterceptor.bijectTargetComponent(BijectionInterceptor.java:30) | sun.reflect.GeneratedMethodAccessor112.invoke(Unknown Source) | sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25) | java.lang.reflect.Method.invoke(Method.java:585) | org.jboss.seam.util.Reflections.invoke(Reflections.java:13) | org.jboss.seam.interceptors.Interceptor.aroundInvoke(Interceptor.java:87) | org.jboss.seam.interceptors.SeamInvocationContext.proceed(SeamInvocationContext.java:60) | org.jboss.seam.interceptors.ConversationInterceptor.endOrBeginLongRunningConversation(ConversationInterceptor.java:68) | sun.reflect.GeneratedMethodAccessor111.invoke(Unknown Source) | sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25) | java.lang.reflect.Method.invoke(Method.java:585) | org.jboss.seam.util.Reflections.invoke(Reflections.java:13) | org.jboss.seam.interceptors.Interceptor.aroundInvoke(Interceptor.java:87) | org.jboss.seam.interceptors.SeamInvocationContext.proceed(SeamInvocationContext.java:60) | org.jboss.seam.interceptors.BusinessProcessInterceptor.manageBusinessProcessContext(BusinessProcessInterceptor.java:60) | sun.reflect.GeneratedMethodAccessor110.invoke(Unknown Source) | sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25) | java.lang.reflect.Method.invoke(Method.java:585) | org.jboss.seam.util.Reflections.invoke(Reflections.java:13) | org.jboss.seam.interceptors.Interceptor.aroundInvoke(Interceptor.java:87) | org.jboss.seam.interceptors.SeamInvocationContext.proceed(SeamInvocationContext.java:60) | org.jboss.seam.interceptors.RemoveInterceptor.removeIfNecessary(RemoveInterceptor.java:39) | sun.reflect.GeneratedMethodAccessor109.invoke(Unknown Source) | sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25) | java.lang.reflect.Method.invoke(Method.java:585) | org.jboss.seam.util.Reflections.invoke(Reflections.java:13) | org.jboss.seam.interceptors.Interceptor.aroundInvoke(Interceptor.java:87) | org.jboss.seam.interceptors.SeamInvocationContext.proceed(SeamInvocationContext.java:60) | org.jboss.seam.ejb.SeamInterceptor.aroundInvokeInContexts(SeamInterceptor.java:73) | org.jboss.seam.ejb.SeamInterceptor.aroundInvoke(SeamInterceptor.java:45) | org.jboss.seam.interceptors.JavaBeanInterceptor.interceptInvocation(JavaBeanInterceptor.java:51) | org.jboss.seam.interceptors.JavaBeanInterceptor.intercept(JavaBeanInterceptor.java:39) | it.myown.seam.ThisIsAComponentWithEntityManagerInjection$$EnhancerByCGLIB$$e6ba7c40.getRootCategories(<generated>) | Donno how Tomcat handles http persistent connections, but it may be that more requests are run in the very same thread (request -> suspend for I/O -> request etc. etc.). If I copy the link heading toward thepage.jsf?c=3 from thepage.jsf?c=1, paste it to the browsers' address field and press "go", the exception isn't thrown (and images look fine, too). Also, when the exception is thrown, reloading the page works (maybe tomcat closes the http conn on exceptions). Again, after a while an exception had been thrown, I get this nice other stuff in the server logfile: | 02:36:28,468 ERROR [Naming] Could not obtain initial context | javax.naming.NoInitialContextException: Cannot instantiate class: org.jnp.interfaces.NamingContextFactory [Root exception is java.lang.ClassNotFoundException: org/jnp/interfaces/NamingContextFactory] | at javax.naming.spi.NamingManager.getInitialContext(NamingManager.java:657) | at javax.naming.InitialContext.getDefaultInitCtx(InitialContext.java:247) | at javax.naming.InitialContext.init(InitialContext.java:223) | at javax.naming.InitialContext.<init>(InitialContext.java:197) | at org.jboss.seam.util.Naming.getInitialContext(Naming.java:26) | at org.jboss.seam.util.Naming.getInitialContext(Naming.java:37) | at org.jboss.seam.core.ManagedPersistenceContext.getEntityManagerFactory(ManagedPersistenceContext.java:83) | at org.jboss.seam.core.ManagedPersistenceContext.create(ManagedPersistenceContext.java:53) | at sun.reflect.GeneratedMethodAccessor256.invoke(Unknown Source) | at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25) | at java.lang.reflect.Method.invoke(Method.java:585) | at org.jboss.seam.util.Reflections.invoke(Reflections.java:13) | at org.jboss.seam.util.Reflections.invokeAndWrap(Reflections.java:32) | at org.jboss.seam.Component.callComponentMethod(Component.java:1166) | at org.jboss.seam.Component.callCreateMethod(Component.java:1151) | at org.jboss.seam.Component.newInstance(Component.java:1140) | at org.jboss.seam.Component.getInstance(Component.java:1088) | at org.jboss.seam.Component.getInstance(Component.java:1071) | at org.jboss.seam.Component.getInstanceToInject(Component.java:1195) | at org.jboss.seam.Component.injectFields(Component.java:879) | at org.jboss.seam.Component.inject(Component.java:686) | at org.jboss.seam.interceptors.BijectionInterceptor.bijectTargetComponent(BijectionInterceptor.java:30) | at sun.reflect.GeneratedMethodAccessor112.invoke(Unknown Source) | at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25) | at java.lang.reflect.Method.invoke(Method.java:585) | at org.jboss.seam.util.Reflections.invoke(Reflections.java:13) | at org.jboss.seam.interceptors.Interceptor.aroundInvoke(Interceptor.java:87) | at org.jboss.seam.interceptors.SeamInvocationContext.proceed(SeamInvocationContext.java:60) | at org.jboss.seam.interceptors.ConversationInterceptor.endOrBeginLongRunningConversation(ConversationInterceptor.java:68) | at sun.reflect.GeneratedMethodAccessor111.invoke(Unknown Source) | at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25) | at java.lang.reflect.Method.invoke(Method.java:585) | at org.jboss.seam.util.Reflections.invoke(Reflections.java:13) | at org.jboss.seam.interceptors.Interceptor.aroundInvoke(Interceptor.java:87) | at org.jboss.seam.interceptors.SeamInvocationContext.proceed(SeamInvocationContext.java:60) | at org.jboss.seam.interceptors.BusinessProcessInterceptor.manageBusinessProcessContext(BusinessProcessInterceptor.java:60) | at sun.reflect.GeneratedMethodAccessor110.invoke(Unknown Source) | at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25) | at java.lang.reflect.Method.invoke(Method.java:585) | at org.jboss.seam.util.Reflections.invoke(Reflections.java:13) | at org.jboss.seam.interceptors.Interceptor.aroundInvoke(Interceptor.java:87) | at org.jboss.seam.interceptors.SeamInvocationContext.proceed(SeamInvocationContext.java:60) | at org.jboss.seam.interceptors.RemoveInterceptor.removeIfNecessary(RemoveInterceptor.java:39) | at sun.reflect.GeneratedMethodAccessor109.invoke(Unknown Source) | at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25) | at java.lang.reflect.Method.invoke(Method.java:585) | at org.jboss.seam.util.Reflections.invoke(Reflections.java:13) | at org.jboss.seam.interceptors.Interceptor.aroundInvoke(Interceptor.java:87) | at org.jboss.seam.interceptors.SeamInvocationContext.proceed(SeamInvocationContext.java:60) | at org.jboss.seam.ejb.SeamInterceptor.aroundInvokeInContexts(SeamInterceptor.java:73) | at org.jboss.seam.ejb.SeamInterceptor.aroundInvoke(SeamInterceptor.java:55) | at org.jboss.seam.interceptors.JavaBeanInterceptor.interceptInvocation(JavaBeanInterceptor.java:51) | at org.jboss.seam.interceptors.JavaBeanInterceptor.intercept(JavaBeanInterceptor.java:39) | at it.myown.seam.ThisIsAnotherComponentWithEntityManagerInjection$$EnhancerByCGLIB$$43b3d843.finalize(<generated>) | at java.lang.ref.Finalizer.invokeFinalizeMethod(Native Method) | at java.lang.ref.Finalizer.runFinalizer(Finalizer.java:83) | at java.lang.ref.Finalizer.access$100(Finalizer.java:14) | at java.lang.ref.Finalizer$FinalizerThread.run(Finalizer.java:160) | Caused by: java.lang.ClassNotFoundException: org/jnp/interfaces/NamingContextFactory | at java.lang.Class.forName0(Native Method) | at java.lang.Class.forName(Class.java:242) | at com.sun.naming.internal.VersionHelper12.loadClass(VersionHelper12.java:42) | at javax.naming.spi.NamingManager.getInitialContext(NamingManager.java:654) | ... 57 more | Seems something related to finalizing a component, but it is not the same from which I got the previous exception. Seems tough, uh? Better, seams tough... :) View the original post : http://www.jboss.com/index.html?module=bb&op=viewtopic&p=3939069#3939069 Reply to the post : http://www.jboss.com/index.html?module=bb&op=posting&mode=reply&p=3939069 ------------------------------------------------------- Using Tomcat but need to do more? Need to support web services, security? Get stuff done quickly with pre-integrated technology to make your job easier Download IBM WebSphere Application Server v.1.0.1 based on Apache Geronimo http://sel.as-us.falkag.net/sel?cmd=lnk&kid=120709&bid=263057&dat=121642 _______________________________________________ JBoss-user mailing list [email protected] https://lists.sourceforge.net/lists/listinfo/jboss-user
