7 Replies Latest reply on Apr 24, 2009 11:13 AM by jmartin.lanista.gmx.de

    Recipe for a disaster (seam 2.1+jboss 4.2.3=fail)

    mader
      Kitchen:
      Microsoft Windows XP Professional SP2
      Java 1.5

      Ingredents:
      - Freshly scooped Eclipse 3.4.1 (slighty used 3.4 will do too)
      - Fresh JBoss 4.2.3.GA (4.2.2.GA will barf nicely also)
      - Fesh Seam 2.1.0.SP1 (or 2.1.0.GA)

      How to do:
      Download ingredents. Go to seam and run seam setup, answering in sensible way to all questions. Project will be named seamtest.

      Result (build.properties):
      hibernate.connection.password=youwannaknoweh
      workspace.home=D\:/eclipses/eclipse-3.4.1/workspace
      model.package=com.mader.seamtest.entity
      driver.jar=D\:/projects/jdbc/postgresql-8.2-508.jdbc3.jar
      action.package=com.mader.seamtest.ses
      test.package=com.mader.seamtest.test
      database.type=postgres
      richfaces.skin=blueSky
      hibernate.default_catalog.null=
      hibernate.default_schema.null=
      database.drop=n
      project.name=seamtest
      hibernate.connection.username=blah
      hibernate.connection.driver_class=org.postgresql.Driver
      hibernate.cache.provider_class=org.hibernate.cache.HashtableCacheProvider
      project.type=ear
      icefaces.home=
      database.exists=y
      jboss.home=C\:/jboss/jboss-4.2.3.GA
      hibernate.dialect=org.hibernate.dialect.PostgreSQLDialect
      hibernate.connection.url=jdbc\:postgresql\://192.168.0.1\:5432/seamtest
      icefaces=n

      Run seam create-project. Success. Run eclipse. Go to workbench, File->New->Project... and select General->Project. Project name seamtest. Should load existing project and run somethingy that is ran always when refreshed[1]. This will create in jboss server default/deploy a directory (yes, DIRECTORY) called seamtest.ear.

      Run with ant build.xml. Barf. No, this is not main disaster, only announcement and setup of feeling of inevitable doom. Delete directory seamtest.ear and run build.xml again. A file (yes, FILE) called, guess what, seamtest.ear is something slightly more sane, isnt it?

      Time for main dish. Start jboss server.

      ===============================================================================

      JBoss Bootstrap Environment

      JBOSS_HOME: C:\jboss\jboss-4.2.3.GA

      JAVA: C:\Program Files\Java\jdk1.5.0_13\bin\java

      JAVA_OPTS: -Dprogram.name=run.bat -server -Xms128m -Xmx512m -Dsun.rmi.dgc.client.gcInterval=3600000 -Dsun.rmi.dgc.server.gcInterval=3600000

      CLASSPATH: C:\Program Files\Java\jdk1.5.0_13\lib\tools.jar;C:\jboss\jboss-4.2.3.GA\bin\run.jar

      ===============================================================================

      09:14:17,515 INFO [Server] Starting JBoss (MX MicroKernel)...
      09:14:17,531 INFO [Server] Release ID: JBoss [Trinity] 4.2.3.GA (build: SVNTag=JBoss_4_2_3_GA date=200807181417)
      09:14:17,531 INFO [Server] Home Dir: C:\jboss\jboss-4.2.3.GA
      09:14:17,531 INFO [Server] Home URL: file:/C:/jboss/jboss-4.2.3.GA/
      09:14:17,531 INFO [Server] Patch URL: null
      09:14:17,531 INFO [Server] Server Name: default
      09:14:17,531 INFO [Server] Server Home Dir: C:\jboss\jboss-4.2.3.GA\server\default
      09:14:17,531 INFO [Server] Server Home URL: file:/C:/jboss/jboss-4.2.3.GA/server/default/
      09:14:17,531 INFO [Server] Server Log Dir: C:\jboss\jboss-4.2.3.GA\server\default\log
      09:14:17,531 INFO [Server] Server Temp Dir: C:\jboss\jboss-4.2.3.GA\server\default\tmp
      09:14:17,531 INFO [Server] Root Deployment Filename: jboss-service.xml
      09:14:17,718 INFO [ServerInfo] Java version: 1.5.0_13,Sun Microsystems Inc.
      09:14:17,718 INFO [ServerInfo] Java VM: Java HotSpot(TM) Server VM 1.5.0_13-b05,Sun Microsystems Inc.
      09:14:17,718 INFO [ServerInfo] OS-System: Windows XP 5.1,x86
      09:14:18,062 INFO [Server] Core system initialized
      ...
      09:14:38,890 INFO [Server] JBoss (MX MicroKernel) [4.2.3.GA (build: SVNTag=JBoss_4_2_3_GA date=200807181417)] Started in 21s:359ms

      Should even not throw any exceptions. Indercible! Run your favorite browser (in my case old, trusty Firefox 3.0... okay, maybe not so old) and go to http://127.0.0.1:8080/seamtest/ . Yay! Something worked. At upper right corner click on "Login". Username: admin. Click button "Login".

      BARF.

      14:50:14,796 ERROR [SeamLoginModule] Error invoking login method
      javax.el.PropertyNotFoundException: Target Unreachable, identifier 'authenticator' resolved to null
      at org.jboss.el.parser.AstValue.getTarget(AstValue.java:38)
      at org.jboss.el.parser.AstValue.invoke(AstValue.java:95)
      at org.jboss.el.MethodExpressionImpl.invoke(MethodExpressionImpl.java:276)
      at org.jboss.seam.core.Expressions$2.invoke(Expressions.java:174)
      at org.jboss.seam.security.jaas.SeamLoginModule.login(SeamLoginModule.java:109)
      at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
      at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
      at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
      at java.lang.reflect.Method.invoke(Method.java:585)
      at javax.security.auth.login.LoginContext.invoke(LoginContext.java:769)
      at javax.security.auth.login.LoginContext.access$000(LoginContext.java:186)
      at javax.security.auth.login.LoginContext$5.run(LoginContext.java:706)
      at java.security.AccessController.doPrivileged(Native Method)
      at javax.security.auth.login.LoginContext.invokeCreatorPriv(LoginContext.java:703)
      at javax.security.auth.login.LoginContext.login(LoginContext.java:575)
      at org.jboss.seam.security.Identity.authenticate(Identity.java:335)
      at org.jboss.seam.security.Identity.authenticate(Identity.java:324)
      at org.jboss.seam.security.Identity.login(Identity.java:253)
      at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
      at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
      at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
      at java.lang.reflect.Method.invoke(Method.java:585)
      at org.jboss.el.util.ReflectionUtil.invokeMethod(ReflectionUtil.java:329)
      at org.jboss.el.util.ReflectionUtil.invokeMethod(ReflectionUtil.java:342)
      at org.jboss.el.parser.AstPropertySuffix.invoke(AstPropertySuffix.java:58)
      at org.jboss.el.parser.AstValue.invoke(AstValue.java:96)
      at org.jboss.el.MethodExpressionImpl.invoke(MethodExpressionImpl.java:276)
      at com.sun.facelets.el.TagMethodExpression.invoke(TagMethodExpression.java:68)
      at javax.faces.component.MethodBindingMethodExpressionAdapter.invoke(MethodBindingMethodExpressionAdapter.java:88)
      at com.sun.faces.application.ActionListenerImpl.processAction(ActionListenerImpl.java:102)
      at javax.faces.component.UICommand.broadcast(UICommand.java:387)
      at org.ajax4jsf.component.AjaxViewRoot.processEvents(AjaxViewRoot.java:321)
      at org.ajax4jsf.component.AjaxViewRoot.broadcastEvents(AjaxViewRoot.java:296)
      at org.ajax4jsf.component.AjaxViewRoot.processPhase(AjaxViewRoot.java:253)
      at org.ajax4jsf.component.AjaxViewRoot.processApplication(AjaxViewRoot.java:466)
      at com.sun.faces.lifecycle.InvokeApplicationPhase.execute(InvokeApplicationPhase.java:82)
      at com.sun.faces.lifecycle.Phase.doPhase(Phase.java:100)
      at com.sun.faces.lifecycle.LifecycleImpl.execute(LifecycleImpl.java:118)
      at javax.faces.webapp.FacesServlet.service(FacesServlet.java:265)
      at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290)
      at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
      at org.jboss.seam.servlet.SeamFilter$FilterChainImpl.doFilter(SeamFilter.java:83)
      at org.jboss.seam.debug.hot.HotDeployFilter.doFilter(HotDeployFilter.java:51)
      at org.jboss.seam.servlet.SeamFilter$FilterChainImpl.doFilter(SeamFilter.java:69)
      at org.jboss.seam.web.IdentityFilter.doFilter(IdentityFilter.java:38)
      at org.jboss.seam.servlet.SeamFilter$FilterChainImpl.doFilter(SeamFilter.java:69)
      at org.jboss.seam.web.MultipartFilter.doFilter(MultipartFilter.java:90)
      at org.jboss.seam.servlet.SeamFilter$FilterChainImpl.doFilter(SeamFilter.java:69)
      at org.jboss.seam.web.ExceptionFilter.doFilter(ExceptionFilter.java:64)
      at org.jboss.seam.servlet.SeamFilter$FilterChainImpl.doFilter(SeamFilter.java:69)
      at org.jboss.seam.web.RedirectFilter.doFilter(RedirectFilter.java:45)
      at org.jboss.seam.servlet.SeamFilter$FilterChainImpl.doFilter(SeamFilter.java:69)
      at org.ajax4jsf.webapp.BaseXMLFilter.doXmlFilter(BaseXMLFilter.java:177)
      at org.ajax4jsf.webapp.BaseFilter.handleRequest(BaseFilter.java:267)
      at org.ajax4jsf.webapp.BaseFilter.processUploadsAndHandleRequest(BaseFilter.java:380)
      at org.ajax4jsf.webapp.BaseFilter.doFilter(BaseFilter.java:507)
      at org.jboss.seam.web.Ajax4jsfFilter.doFilter(Ajax4jsfFilter.java:56)
      at org.jboss.seam.servlet.SeamFilter$FilterChainImpl.doFilter(SeamFilter.java:69)
      at org.jboss.seam.web.LoggingFilter.doFilter(LoggingFilter.java:58)
      at org.jboss.seam.servlet.SeamFilter$FilterChainImpl.doFilter(SeamFilter.java:69)
      at org.jboss.seam.servlet.SeamFilter.doFilter(SeamFilter.java:158)
      at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235)
      at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
      at org.jboss.web.tomcat.filters.ReplyHeaderFilter.doFilter(ReplyHeaderFilter.java:96)
      at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235)
      at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
      at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:230)
      at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:175)
      at org.jboss.web.tomcat.security.SecurityAssociationValve.invoke(SecurityAssociationValve.java:182)
      at org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:432)
      at org.jboss.web.tomcat.security.JaccContextValve.invoke(JaccContextValve.java:84)
      at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:127)
      at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:102)
      at org.jboss.web.tomcat.service.jca.CachedConnectionValve.invoke(CachedConnectionValve.java:157)
      at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:109)
      at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:262)
      at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:844)
      at org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.process(Http11Protocol.java:583)
      at org.apache.tomcat.util.net.JIoEndpoint$Worker.run(JIoEndpoint.java:446)
      at java.lang.Thread.run(Thread.java:595)

      Oh joy. What now? I tried many combination of versions (mentioned at beginning) and on differnet computer. Strangely, on computer of my colleague recipe works. Works on my computer, if I run jboss copied directly from him. But if I dare to get from him eclipse project created like seamtest, recompile and build, it will barf.

      [1] On one other computer where this recipe was tested, eclipse run and run this thingy in loop for a unknown reason, effectively making impossible to do rest of recipe. Cutting edge gastronomy, indeed.
        • 1. Re: Recipe for a disaster (seam 2.1+jboss 4.2.3=fail)
          paulmkeogh
          rewrite your components.xml as follows;

             <!-- 
              Removing JBoss Rules because Tools 3.0 generated causes exception on 1st page access
             
             <drools:rule-base name="securityRules">
                 <drools:rule-files>
                     <value>security</value>
                 </drools:rule-files>
             </drools:rule-base>
               -->

             <!-- 
              Removing JBoss Rules because Tools 3.0 generated causes exception on 1st page access
             
             <security:identity security-rules="#{securityRules}" authenticate-method="#{authenticator.authenticate}" remember-me="true"/>
               -->
              
             <security:identity authenticate-method="#{authenticator.authenticate}"/>

          I dont know why this works, but it worked for me ! YMMV.
          • 2. Re: Recipe for a disaster (seam 2.1+jboss 4.2.3=fail)
            taccart.thierry.accart.name

            Don't you think calling this problem a disaster a bit too much ? :-)


            • 3. Re: Recipe for a disaster (seam 2.1+jboss 4.2.3=fail)
              paulmkeogh

              true... but its quite challenging if you're a novice user stepping your way through a wizard, doing everything right and then you're faced with this type of obscure error. I'd guess a lot of people have wasted a lot of hours on this one...

              • 4. Re: Recipe for a disaster (seam 2.1+jboss 4.2.3=fail)
                mader
                Sorry that I answer so late to that. I am somewhat busy with many different things. :) At last, I returned to SEAM...

                Thanks, this tip worked. But I almost instantly ran into another - I am sure trivial - problem.

                I wanted to allow instant relog after logout. I changed in menu.xhtml:

                <s:link view="/home.xhtml" action="#{identity.logout}" value="Logout" rendered="#{identity.loggedIn}" propagation="none"/>

                to

                <s:link view="/login.xhtml" action="#{identity.logout}" value="Logout" rendered="#{identity.loggedIn}" propagation="none"/>

                No other changes - this is freshly installed project seamtest.

                After deploy go to http://127.0.0.1:8080/seamtest and log in. Logout removes "signed in as" and redirects to login screen as expected. But when I tried to log in again as admin... barf. How nice.

                10:05:50,671 ERROR [lifecycle] JSF1054: (Phase ID: RESTORE_VIEW 1, View ID: ) Exception thrown during phase execution: javax.faces.event.PhaseEvent[source=com.sun.faces.lifecycle.LifecycleImpl@de537]
                10:05:50,671 WARN  [ExceptionFilter] handling uncaught exception
                javax.servlet.ServletException: viewId:/login.seam - View /login.seam could not be restored.
                     at javax.faces.webapp.FacesServlet.service(FacesServlet.java:270)
                     at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290)
                     at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
                     at org.jboss.seam.servlet.SeamFilter$FilterChainImpl.doFilter(SeamFilter.java:83)
                     at org.jboss.seam.debug.hot.HotDeployFilter.doFilter(HotDeployFilter.java:51)
                     at org.jboss.seam.servlet.SeamFilter$FilterChainImpl.doFilter(SeamFilter.java:69)
                     at org.jboss.seam.web.IdentityFilter.doFilter(IdentityFilter.java:38)
                     at org.jboss.seam.servlet.SeamFilter$FilterChainImpl.doFilter(SeamFilter.java:69)
                     at org.jboss.seam.web.MultipartFilter.doFilter(MultipartFilter.java:90)
                     at org.jboss.seam.servlet.SeamFilter$FilterChainImpl.doFilter(SeamFilter.java:69)
                     at org.jboss.seam.web.ExceptionFilter.doFilter(ExceptionFilter.java:64)
                     at org.jboss.seam.servlet.SeamFilter$FilterChainImpl.doFilter(SeamFilter.java:69)
                     at org.jboss.seam.web.RedirectFilter.doFilter(RedirectFilter.java:45)
                     at org.jboss.seam.servlet.SeamFilter$FilterChainImpl.doFilter(SeamFilter.java:69)
                     at org.ajax4jsf.webapp.BaseXMLFilter.doXmlFilter(BaseXMLFilter.java:177)
                     at org.ajax4jsf.webapp.BaseFilter.handleRequest(BaseFilter.java:267)
                     at org.ajax4jsf.webapp.BaseFilter.processUploadsAndHandleRequest(BaseFilter.java:380)
                     at org.ajax4jsf.webapp.BaseFilter.doFilter(BaseFilter.java:507)
                     at org.jboss.seam.web.Ajax4jsfFilter.doFilter(Ajax4jsfFilter.java:56)
                     at org.jboss.seam.servlet.SeamFilter$FilterChainImpl.doFilter(SeamFilter.java:69)
                     at org.jboss.seam.web.LoggingFilter.doFilter(LoggingFilter.java:58)
                     at org.jboss.seam.servlet.SeamFilter$FilterChainImpl.doFilter(SeamFilter.java:69)
                     at org.jboss.seam.servlet.SeamFilter.doFilter(SeamFilter.java:158)
                     at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235)
                     at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
                     at org.jboss.web.tomcat.filters.ReplyHeaderFilter.doFilter(ReplyHeaderFilter.java:96)
                     at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235)
                     at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
                     at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:230)
                     at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:175)
                     at org.jboss.web.tomcat.security.SecurityAssociationValve.invoke(SecurityAssociationValve.java:182)
                     at org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:432)
                     at org.jboss.web.tomcat.security.JaccContextValve.invoke(JaccContextValve.java:84)
                     at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:127)
                     at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:102)
                     at org.jboss.web.tomcat.service.jca.CachedConnectionValve.invoke(CachedConnectionValve.java:157)
                     at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:109)
                     at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:262)
                     at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:844)
                     at org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.process(Http11Protocol.java:583)
                     at org.apache.tomcat.util.net.JIoEndpoint$Worker.run(JIoEndpoint.java:446)
                     at java.lang.Thread.run(Thread.java:595)
                Caused by: javax.faces.application.ViewExpiredException: viewId:/login.seam - View /login.seam could not be restored.
                     at com.sun.faces.lifecycle.RestoreViewPhase.execute(RestoreViewPhase.java:186)
                     at com.sun.faces.lifecycle.Phase.doPhase(Phase.java:100)
                     at com.sun.faces.lifecycle.RestoreViewPhase.doPhase(RestoreViewPhase.java:104)
                     at com.sun.faces.lifecycle.LifecycleImpl.execute(LifecycleImpl.java:118)
                     at javax.faces.webapp.FacesServlet.service(FacesServlet.java:265)
                     ... 41 more
                10:05:50,671 WARN  [ExceptionFilter] exception root cause
                javax.faces.application.ViewExpiredException: viewId:/login.seam - View /login.seam could not be restored.
                     at com.sun.faces.lifecycle.RestoreViewPhase.execute(RestoreViewPhase.java:186)
                     at com.sun.faces.lifecycle.Phase.doPhase(Phase.java:100)
                     at com.sun.faces.lifecycle.RestoreViewPhase.doPhase(RestoreViewPhase.java:104)
                     at com.sun.faces.lifecycle.LifecycleImpl.execute(LifecycleImpl.java:118)
                     at javax.faces.webapp.FacesServlet.service(FacesServlet.java:265)
                     at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290)
                     at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
                     at org.jboss.seam.servlet.SeamFilter$FilterChainImpl.doFilter(SeamFilter.java:83)
                     at org.jboss.seam.debug.hot.HotDeployFilter.doFilter(HotDeployFilter.java:51)
                     at org.jboss.seam.servlet.SeamFilter$FilterChainImpl.doFilter(SeamFilter.java:69)
                     at org.jboss.seam.web.IdentityFilter.doFilter(IdentityFilter.java:38)
                     at org.jboss.seam.servlet.SeamFilter$FilterChainImpl.doFilter(SeamFilter.java:69)
                     at org.jboss.seam.web.MultipartFilter.doFilter(MultipartFilter.java:90)
                     at org.jboss.seam.servlet.SeamFilter$FilterChainImpl.doFilter(SeamFilter.java:69)
                     at org.jboss.seam.web.ExceptionFilter.doFilter(ExceptionFilter.java:64)
                     at org.jboss.seam.servlet.SeamFilter$FilterChainImpl.doFilter(SeamFilter.java:69)
                     at org.jboss.seam.web.RedirectFilter.doFilter(RedirectFilter.java:45)
                     at org.jboss.seam.servlet.SeamFilter$FilterChainImpl.doFilter(SeamFilter.java:69)
                     at org.ajax4jsf.webapp.BaseXMLFilter.doXmlFilter(BaseXMLFilter.java:177)
                     at org.ajax4jsf.webapp.BaseFilter.handleRequest(BaseFilter.java:267)
                     at org.ajax4jsf.webapp.BaseFilter.processUploadsAndHandleRequest(BaseFilter.java:380)
                     at org.ajax4jsf.webapp.BaseFilter.doFilter(BaseFilter.java:507)
                     at org.jboss.seam.web.Ajax4jsfFilter.doFilter(Ajax4jsfFilter.java:56)
                     at org.jboss.seam.servlet.SeamFilter$FilterChainImpl.doFilter(SeamFilter.java:69)
                     at org.jboss.seam.web.LoggingFilter.doFilter(LoggingFilter.java:58)
                     at org.jboss.seam.servlet.SeamFilter$FilterChainImpl.doFilter(SeamFilter.java:69)
                     at org.jboss.seam.servlet.SeamFilter.doFilter(SeamFilter.java:158)
                     at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235)
                     at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
                     at org.jboss.web.tomcat.filters.ReplyHeaderFilter.doFilter(ReplyHeaderFilter.java:96)
                     at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235)
                     at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
                     at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:230)
                     at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:175)
                     at org.jboss.web.tomcat.security.SecurityAssociationValve.invoke(SecurityAssociationValve.java:182)
                     at org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:432)
                     at org.jboss.web.tomcat.security.JaccContextValve.invoke(JaccContextValve.java:84)
                     at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:127)
                     at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:102)
                     at org.jboss.web.tomcat.service.jca.CachedConnectionValve.invoke(CachedConnectionValve.java:157)
                     at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:109)
                     at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:262)
                     at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:844)
                     at org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.process(Http11Protocol.java:583)
                     at org.apache.tomcat.util.net.JIoEndpoint$Worker.run(JIoEndpoint.java:446)
                     at java.lang.Thread.run(Thread.java:595)
                10:05:50,671 WARN  [ExceptionFilter] running exception handlers
                10:05:50,671 ERROR [ExceptionFilter] could not roll back transaction
                java.util.EmptyStackException
                     at java.util.Stack.peek(Stack.java:79)
                     at java.util.Stack.pop(Stack.java:61)
                     at org.jboss.seam.transaction.SeSynchronizations.afterTransactionRollback(SeSynchronizations.java:45)
                     at org.jboss.seam.transaction.UTTransaction.rollback(UTTransaction.java:70)
                     at org.jboss.seam.web.ExceptionFilter.rollbackTransactionIfNecessary(ExceptionFilter.java:159)
                     at org.jboss.seam.web.ExceptionFilter.endWebRequestAfterException(ExceptionFilter.java:113)
                     at org.jboss.seam.web.ExceptionFilter.doFilter(ExceptionFilter.java:70)
                     at org.jboss.seam.servlet.SeamFilter$FilterChainImpl.doFilter(SeamFilter.java:69)
                     at org.jboss.seam.web.RedirectFilter.doFilter(RedirectFilter.java:45)
                     at org.jboss.seam.servlet.SeamFilter$FilterChainImpl.doFilter(SeamFilter.java:69)
                     at org.ajax4jsf.webapp.BaseXMLFilter.doXmlFilter(BaseXMLFilter.java:177)
                     at org.ajax4jsf.webapp.BaseFilter.handleRequest(BaseFilter.java:267)
                     at org.ajax4jsf.webapp.BaseFilter.processUploadsAndHandleRequest(BaseFilter.java:380)
                     at org.ajax4jsf.webapp.BaseFilter.doFilter(BaseFilter.java:507)
                     at org.jboss.seam.web.Ajax4jsfFilter.doFilter(Ajax4jsfFilter.java:56)
                     at org.jboss.seam.servlet.SeamFilter$FilterChainImpl.doFilter(SeamFilter.java:69)
                     at org.jboss.seam.web.LoggingFilter.doFilter(LoggingFilter.java:58)
                     at org.jboss.seam.servlet.SeamFilter$FilterChainImpl.doFilter(SeamFilter.java:69)
                     at org.jboss.seam.servlet.SeamFilter.doFilter(SeamFilter.java:158)
                     at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235)
                     at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
                     at org.jboss.web.tomcat.filters.ReplyHeaderFilter.doFilter(ReplyHeaderFilter.java:96)
                     at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235)
                     at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
                     at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:230)
                     at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:175)
                     at org.jboss.web.tomcat.security.SecurityAssociationValve.invoke(SecurityAssociationValve.java:182)
                     at org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:432)
                     at org.jboss.web.tomcat.security.JaccContextValve.invoke(JaccContextValve.java:84)
                     at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:127)
                     at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:102)
                     at org.jboss.web.tomcat.service.jca.CachedConnectionValve.invoke(CachedConnectionValve.java:157)
                     at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:109)
                     at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:262)
                     at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:844)
                     at org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.process(Http11Protocol.java:583)
                     at org.apache.tomcat.util.net.JIoEndpoint$Worker.run(JIoEndpoint.java:446)
                     at java.lang.Thread.run(Thread.java:595)

                In browser:

                Error
                Something bad happened :-(
                    * Your session has timed out, please try again

                Login again works only if there at least one other page loading between logout and another login (like /home.xhtml in seam example).

                I don't want to be offensive, but why seam Just NOT Work? For now, it fails me on completely basic things, like logging (twice in row).
                • 5. Re: Recipe for a disaster (seam 2.1+jboss 4.2.3=fail)
                  mader

                  Yes, this IS disaster. I wonder how many beginners was turned off by basic things like this. Surely you and seam creators want SEAM to be used widely and as much as possible.


                  It is very bad if tester after deploying seam just hacks application to work and do not anything with that. Anybody thought why I must doing these hacks, why this does not work out of box? Or what would beginner do here?


                  Disclosure: I worked with SEAM (2.0) before, but I never tried installing it from scrath until now (colleague of mine helped me with old version).


                  I want to try new version of seam, because somewhere in me still lingers hope that new version of seam will fix at least some of esoteric and very annoying bugs that I encountered, while not introducing too much new bugs...


                  Sorry for scatching tone of this post. I don't want to offense anyone, I simply state what I think about it.

                  • 6. Re: Recipe for a disaster (seam 2.1+jboss 4.2.3=fail)
                    mader
                    Look like adding folowing lines to web.xml suffice:

                    <context-param>
                      <param-name>facelets.BUILD_BEFORE_RESTORE</param-name>
                      <param-value>true</param-value>
                    </context-param>

                    Only one question remains: why it is not here from beginning?...
                    • 7. Re: Recipe for a disaster (seam 2.1+jboss 4.2.3=fail)
                      jmartin.lanista.gmx.de
                      your beans would be created every time you refresh the site. the old properties you may need are gone.
                      another solution is to delete propagation=none from the logout link
                      and do logout throu @End logout(){identity.logout}.
                      it helped me, i have a long running conversation