1 Reply Latest reply on Apr 27, 2007 2:52 PM by Pete Muir

    getting numberGuess example running in AS 4.0.5 with JSF 1.2

    Ian Springer Apprentice

      I have successfully gotten the booking example running, following the instructions in the Seam tutorial (http://docs.jboss.com/seam/1.2.1.GA/reference/en/html/tutorial.html#d0e2067). However, I am having issues getting the numberGuess example working. It deploys successfully, but when I try to open the app in my browser, I get the following exception:

      13:10:58,723 ERROR [STDERR] Apr 27, 2007 1:10:58 PM com.sun.faces.lifecycle.ELResolverInitPhaseListener populateFacesELR
      esolverForJsp
      INFO: JSF1027: [null] The ELResolvers for JSF were not registered with the JSP container.
      13:10:58,786 INFO [Pages] reading pages.xml
      13:10:59,004 ERROR [[jsp]] Servlet.service() for servlet jsp threw exception
      java.lang.NoClassDefFoundError: javax/servlet/jsp/tagext/JspIdConsumer
      at java.lang.ClassLoader.defineClass1(Native Method)
      at java.lang.ClassLoader.defineClass(ClassLoader.java:620)
      at java.security.SecureClassLoader.defineClass(SecureClassLoader.java:124)
      at java.net.URLClassLoader.defineClass(URLClassLoader.java:260)
      at java.net.URLClassLoader.access$100(URLClassLoader.java:56)
      at java.net.URLClassLoader$1.run(URLClassLoader.java:195)
      at java.security.AccessController.doPrivileged(Native Method)
      at java.net.URLClassLoader.findClass(URLClassLoader.java:188)
      at org.jboss.mx.loading.RepositoryClassLoader.findClassLocally(RepositoryClassLoader.java:672)
      at org.jboss.mx.loading.RepositoryClassLoader.findClass(RepositoryClassLoader.java:652)
      at java.lang.ClassLoader.loadClass(ClassLoader.java:306)
      at org.jboss.mx.loading.RepositoryClassLoader.loadClassLocally(RepositoryClassLoader.java:190)
      at org.jboss.mx.loading.ClassLoadingTask$ThreadTask.run(ClassLoadingTask.java:131)
      at org.jboss.mx.loading.LoadMgr3.nextTask(LoadMgr3.java:399)
      at org.jboss.mx.loading.RepositoryClassLoader.loadClassImpl(RepositoryClassLoader.java:517)
      at org.jboss.mx.loading.RepositoryClassLoader.loadClass(RepositoryClassLoader.java:405)
      at java.lang.ClassLoader.loadClass(ClassLoader.java:251)
      at java.lang.ClassLoader.loadClassInternal(ClassLoader.java:319)
      at java.lang.ClassLoader.defineClass1(Native Method)
      at java.lang.ClassLoader.defineClass(ClassLoader.java:620)
      at java.security.SecureClassLoader.defineClass(SecureClassLoader.java:124)
      at java.net.URLClassLoader.defineClass(URLClassLoader.java:260)
      at java.net.URLClassLoader.access$100(URLClassLoader.java:56)
      at java.net.URLClassLoader$1.run(URLClassLoader.java:195)
      at java.security.AccessController.doPrivileged(Native Method)
      at java.net.URLClassLoader.findClass(URLClassLoader.java:188)
      at org.jboss.mx.loading.RepositoryClassLoader.findClassLocally(RepositoryClassLoader.java:672)
      at org.jboss.mx.loading.RepositoryClassLoader.findClass(RepositoryClassLoader.java:652)
      at java.lang.ClassLoader.loadClass(ClassLoader.java:306)
      at org.jboss.mx.loading.RepositoryClassLoader.loadClassLocally(RepositoryClassLoader.java:190)
      at org.jboss.mx.loading.ClassLoadingTask$ThreadTask.run(ClassLoadingTask.java:131)
      at org.jboss.mx.loading.LoadMgr3.nextTask(LoadMgr3.java:399)
      at org.jboss.mx.loading.RepositoryClassLoader.loadClassImpl(RepositoryClassLoader.java:517)
      at org.jboss.mx.loading.RepositoryClassLoader.loadClass(RepositoryClassLoader.java:405)
      at java.lang.ClassLoader.loadClass(ClassLoader.java:299)
      at java.net.FactoryURLClassLoader.loadClass(URLClassLoader.java:580)
      at java.lang.ClassLoader.loadClass(ClassLoader.java:251)
      at org.apache.catalina.loader.WebappClassLoader.loadClass(WebappClassLoader.java:1342)
      at org.apache.catalina.loader.WebappClassLoader.loadClass(WebappClassLoader.java:1201)
      at java.lang.ClassLoader.loadClassInternal(ClassLoader.java:319)
      at java.lang.ClassLoader.defineClass1(Native Method)
      at java.lang.ClassLoader.defineClass(ClassLoader.java:620)
      at java.security.SecureClassLoader.defineClass(SecureClassLoader.java:124)
      at org.apache.catalina.loader.WebappClassLoader.findClassInternal(WebappClassLoader.java:1815)
      at org.apache.catalina.loader.WebappClassLoader.findClass(WebappClassLoader.java:869)
      at org.apache.catalina.loader.WebappClassLoader.loadClass(WebappClassLoader.java:1322)
      at org.apache.catalina.loader.WebappClassLoader.loadClass(WebappClassLoader.java:1201)
      at java.lang.ClassLoader.loadClassInternal(ClassLoader.java:319)
      at java.lang.ClassLoader.defineClass1(Native Method)
      at java.lang.ClassLoader.defineClass(ClassLoader.java:620)
      at java.security.SecureClassLoader.defineClass(SecureClassLoader.java:124)
      at org.apache.catalina.loader.WebappClassLoader.findClassInternal(WebappClassLoader.java:1815)
      at org.apache.catalina.loader.WebappClassLoader.findClass(WebappClassLoader.java:869)
      at org.apache.catalina.loader.WebappClassLoader.loadClass(WebappClassLoader.java:1322)
      at org.apache.catalina.loader.WebappClassLoader.loadClass(WebappClassLoader.java:1201)
      at org.apache.jasper.compiler.JspDocumentParser.parseCustomAction(JspDocumentParser.java:1163)
      at org.apache.jasper.compiler.JspDocumentParser.startElement(JspDocumentParser.java:399)
      at org.apache.xerces.parsers.AbstractSAXParser.startElement(Unknown Source)
      at org.apache.xerces.parsers.AbstractXMLDocumentParser.emptyElement(Unknown Source)
      at org.apache.xerces.impl.XMLNSDocumentScannerImpl.scanStartElement(Unknown Source)
      at org.apache.xerces.impl.XMLDocumentFragmentScannerImpl$FragmentContentDispatcher.dispatch(Unknown Source)
      at org.apache.xerces.impl.XMLDocumentFragmentScannerImpl.scanDocument(Unknown Source)
      at org.apache.xerces.parsers.XML11Configuration.parse(Unknown Source)
      at org.apache.xerces.parsers.XML11Configuration.parse(Unknown Source)
      at org.apache.xerces.parsers.XMLParser.parse(Unknown Source)
      at org.apache.xerces.parsers.AbstractSAXParser.parse(Unknown Source)
      at org.apache.xerces.jaxp.SAXParserImpl$JAXPSAXParser.parse(Unknown Source)
      at javax.xml.parsers.SAXParser.parse(Unknown Source)
      at org.apache.jasper.compiler.JspDocumentParser.parse(JspDocumentParser.java:176)
      at org.apache.jasper.compiler.ParserController.doParse(ParserController.java:196)
      at org.apache.jasper.compiler.ParserController.parse(ParserController.java:100)
      at org.apache.jasper.compiler.Compiler.generateJava(Compiler.java:155)
      at org.apache.jasper.compiler.Compiler.compile(Compiler.java:295)
      at org.apache.jasper.compiler.Compiler.compile(Compiler.java:276)
      at org.apache.jasper.compiler.Compiler.compile(Compiler.java:264)
      at org.apache.jasper.JspCompilationContext.compile(JspCompilationContext.java:563)
      at org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:305)
      at org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:314)
      at org.apache.jasper.servlet.JspServlet.service(JspServlet.java:264)
      at javax.servlet.http.HttpServlet.service(HttpServlet.java:810)
      at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:252)
      at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:173)
      at org.apache.catalina.core.ApplicationDispatcher.invoke(ApplicationDispatcher.java:672)
      at org.apache.catalina.core.ApplicationDispatcher.processRequest(ApplicationDispatcher.java:463)
      at org.apache.catalina.core.ApplicationDispatcher.doForward(ApplicationDispatcher.java:398)
      at org.apache.catalina.core.ApplicationDispatcher.forward(ApplicationDispatcher.java:301)
      at com.sun.faces.context.ExternalContextImpl.dispatch(ExternalContextImpl.java:422)
      at com.sun.faces.application.ViewHandlerImpl.executePageToBuildView(ViewHandlerImpl.java:447)
      at com.sun.faces.application.ViewHandlerImpl.renderView(ViewHandlerImpl.java:116)
      at org.jboss.seam.jsf.SeamViewHandler.renderView(SeamViewHandler.java:59)
      at com.sun.faces.lifecycle.RenderResponsePhase.execute(RenderResponsePhase.java:106)
      at com.sun.faces.lifecycle.LifecycleImpl.phase(LifecycleImpl.java:248)
      at com.sun.faces.lifecycle.LifecycleImpl.render(LifecycleImpl.java:144)
      at javax.faces.webapp.FacesServlet.service(FacesServlet.java:245)
      at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:252)
      at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:173)
      at org.jboss.seam.servlet.SeamRedirectFilter.doFilter(SeamRedirectFilter.java:29)
      at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:202)
      at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:173)
      at org.jboss.web.tomcat.filters.ReplyHeaderFilter.doFilter(ReplyHeaderFilter.java:96)
      at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:202)
      at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:173)
      at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:213)
      at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:178)
      at org.jboss.web.tomcat.security.SecurityAssociationValve.invoke(SecurityAssociationValve.java:175)
      at org.jboss.web.tomcat.security.JaccContextValve.invoke(JaccContextValve.java:74)
      at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:126)
      at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:105)
      at org.jboss.web.tomcat.tc5.jca.CachedConnectionValve.invoke(CachedConnectionValve.java:156)
      at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:107)
      at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:148)
      at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:869)
      at org.apache.coyote.http11.Http11BaseProtocol$Http11ConnectionHandler.processConnection(Http11BaseProtocol.java
      :664)
      at org.apache.tomcat.util.net.PoolTcpEndpoint.processSocket(PoolTcpEndpoint.java:527)
      at org.apache.tomcat.util.net.MasterSlaveWorkerThread.run(MasterSlaveWorkerThread.java:112)
      at java.lang.Thread.run(Thread.java:595)

      13:10:59,004 ERROR [STDERR] Apr 27, 2007 1:10:59 PM com.sun.faces.lifecycle.LifecycleImpl phase
      WARNING: executePhase(RENDER_RESPONSE 6,com.sun.faces.context.FacesContextImpl@84e723) threw exception
      javax.faces.FacesException: javax.servlet.ServletException: javax/servlet/jsp/tagext/JspIdConsumer
      at com.sun.faces.context.ExternalContextImpl.dispatch(ExternalContextImpl.java:427)
      at com.sun.faces.application.ViewHandlerImpl.executePageToBuildView(ViewHandlerImpl.java:447)
      at com.sun.faces.application.ViewHandlerImpl.renderView(ViewHandlerImpl.java:116)
      at org.jboss.seam.jsf.SeamViewHandler.renderView(SeamViewHandler.java:59)
      at com.sun.faces.lifecycle.RenderResponsePhase.execute(RenderResponsePhase.java:106)
      at com.sun.faces.lifecycle.LifecycleImpl.phase(LifecycleImpl.java:248)
      at com.sun.faces.lifecycle.LifecycleImpl.render(LifecycleImpl.java:144)
      at javax.faces.webapp.FacesServlet.service(FacesServlet.java:245)
      at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:252)
      at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:173)
      at org.jboss.seam.servlet.SeamRedirectFilter.doFilter(SeamRedirectFilter.java:29)
      at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:202)
      at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:173)
      at org.jboss.web.tomcat.filters.ReplyHeaderFilter.doFilter(ReplyHeaderFilter.java:96)
      at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:202)
      at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:173)
      at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:213)
      at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:178)
      at org.jboss.web.tomcat.security.SecurityAssociationValve.invoke(SecurityAssociationValve.java:175)
      at org.jboss.web.tomcat.security.JaccContextValve.invoke(JaccContextValve.java:74)
      at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:126)
      at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:105)
      at org.jboss.web.tomcat.tc5.jca.CachedConnectionValve.invoke(CachedConnectionValve.java:156)
      at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:107)
      at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:148)
      at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:869)
      at org.apache.coyote.http11.Http11BaseProtocol$Http11ConnectionHandler.processConnection(Http11BaseProtocol.java
      :664)
      at org.apache.tomcat.util.net.PoolTcpEndpoint.processSocket(PoolTcpEndpoint.java:527)
      at org.apache.tomcat.util.net.MasterSlaveWorkerThread.run(MasterSlaveWorkerThread.java:112)
      at java.lang.Thread.run(Thread.java:595)
      Caused by: javax.servlet.ServletException: javax/servlet/jsp/tagext/JspIdConsumer
      at org.apache.jasper.servlet.JspServlet.service(JspServlet.java:272)
      at javax.servlet.http.HttpServlet.service(HttpServlet.java:810)
      at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:252)
      at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:173)
      at org.apache.catalina.core.ApplicationDispatcher.invoke(ApplicationDispatcher.java:672)
      at org.apache.catalina.core.ApplicationDispatcher.processRequest(ApplicationDispatcher.java:463)
      at org.apache.catalina.core.ApplicationDispatcher.doForward(ApplicationDispatcher.java:398)
      at org.apache.catalina.core.ApplicationDispatcher.forward(ApplicationDispatcher.java:301)
      at com.sun.faces.context.ExternalContextImpl.dispatch(ExternalContextImpl.java:422)
      ... 29 more

      The class it is trying to find - javax/servlet/jsp/tagext/JspIdConsumer - is a new interface that was added by JSP 2.1. One obvious difference between the numberGuess and booking apps is that numberGuess uses JSP but booking uses Facelets. I suspect the use of JSPs is what is causing the JSF 1.2 RI to go down a code path that references the JSP 2.1 class.

      Is there a solution to this issue (besides converting the JSPs over to Facelets)?

      My environment is as follows:

      * JBossAS 4.0.5 w/ EJB3 installer profile
      * JSF RI 1.2_04
      * EL 1.0
      * Seam 1.2.1.GA (I also tried Seam JBoss 1.1.6.GA)
      * Facelet 1.1.12 (I had to stick this in WEB-INF/lib to prevent a "NoClassDefFoundError: com/sun/facelets/compiler/Compiler" from the JSF RI's ConfigureListener class during deployment, which is strange considering the numberGuess app doesn't use any Facelets)

      Thanks.
      Ian

        • 1. Re: getting numberGuess example running in AS 4.0.5 with JSF
          Pete Muir Master

          AS 4.0.5.GA comes with JSF 1.1 and JSP 2.0. The instructions you reference discuss upgrading JSF to 1.2 but don't discuss upgrading JSP (we recommend you use facelets very strongly). The next version of Seam (1.3) will target AS 4.2 which supports JSF 1.2 and JSP 2.1 ootb - in fact, Seam in CVS is running on 4.2 now, and most the examples are running fine.

          Sorry, I know that doesn't help fix this problem - but I would recommend getting hold of Seam from CVS if you want to use JSF 1.2 :)