6 Replies Latest reply on Mar 4, 2009 12:16 PM by Julien Kronegg

    Seam 2.1 and WebSphere 7.0

    Dimitri Giwerzew Newbie

      Hello,


      Does anybody have experience using Seam 2.1 with Rich Faces and WebSphere 7.0?
      We currently have the problem that our Seam application which runs on WebSphere 6.1 does not run on WebSphere 7.0.


      Thanks in advance!
      Dimitri


        • 1. Re: Seam 2.1 and WebSphere 7.0
          Diana Gomez Newbie
          I`m in the same boat. I wonder if  would be better to keep working with WAS 6.1...

          • 2. Re: Seam 2.1 and WebSphere 7.0
            Denis Forveille Novice

            What specific problem do you have?


            Except for bug  JBSEAM-3726 for which I submitted a patch (and I hope it will be included soon in the mainstream) , Seam 2.1.1 works fine for us (WAS v7.0.0.1 + RSA v7.5, windows and linux RH 5.2)
            We also have a large app in production on WebSphere v6.1.0.11 (Without EJB 3.0 FP, ie in POJO mode) that works very well too.


            For our apps on WAS v7.0, we use: facelets 1.1.14, RF v3.3.0, seam 2.1.1, JPA, hibernate v3.3, JSF-RI included in was v7.0 (v1.2-07), log4j etc...


            For our apps on WAS v6.1, we use: facelets 1.1.14, RF v3.3.0, seam 2.1.1, hibernate v3.2.6,JSF-RI v1.2-11 (With a tiny patch for pyjamas)

            • 3. Re: Seam 2.1 and WebSphere 7.0
              Dimitri Giwerzew Newbie

              Dear Denis,


              We try to deploy a POJO (JPA) Seam 2.1.1 application on IBM WAS 7.0.0.0.
              This application works fine on IBM WAS 6.1 (except of some problems with Richfaces tree).
              The libraries we used are shipped with Seam 2.1.1:
              - Hibernate 3.2.4.sp1
              - Richfaces 3.2.2.SR1


              After deploying and trying to access our application we get the following error (please find below).
              We are just wondering why it tries to initialize MyFaces?
              Maybe it is just a simple configuration problem, but in the Seam documentation is only described how to deploy a Seam application on IBM WAS 6.1.
              Is it possible to have a short description regarding deploying a Seam 2.1.1 JPA application on IBM WAS 7.0?


              Kind regards,
              Dimitri


                                               java.lang.VerifyError: javax/servlet/jsp/JspApplicationContext.getExpressionFactory()Ljavax/el/ExpressionFactory;
                      at com.sun.faces.config.ConfigureListener.registerELResolverAndListenerWithJsp(ConfigureListener.java:1570)
                      at com.sun.faces.config.ConfigureListener.contextInitialized(ConfigureListener.java:403)
                      at com.ibm.ws.webcontainer.webapp.WebApp.notifyServletContextCreated(WebApp.java:1588)
                      at com.ibm.ws.webcontainer.webapp.WebApp.commonInitializationFinish(WebApp.java:350)
                      at com.ibm.ws.webcontainer.webapp.WebAppImpl.initialize(WebAppImpl.java:292)
                      at com.ibm.ws.webcontainer.webapp.WebGroupImpl.addWebApplication(WebGroupImpl.java:99)
                      at com.ibm.ws.webcontainer.VirtualHostImpl.addWebApplication(VirtualHostImpl.java:167)
                      at com.ibm.ws.webcontainer.WSWebContainer.addWebApp(WSWebContainer.java:722)
                      at com.ibm.ws.webcontainer.WSWebContainer.addWebApplication(WSWebContainer.java:607)
                      at com.ibm.ws.webcontainer.component.WebContainerImpl.install(WebContainerImpl.java:376)
                      at com.ibm.ws.webcontainer.component.WebContainerImpl.start(WebContainerImpl.java:668)
                      at com.ibm.ws.runtime.component.ApplicationMgrImpl.start(ApplicationMgrImpl.java:1162)
                      at com.ibm.ws.runtime.component.DeployedApplicationImpl.fireDeployedObjectStart(DeployedApplicationImpl.java:1313)
                      at com.ibm.ws.runtime.component.DeployedModuleImpl.start(DeployedModuleImpl.java:611)
                      at com.ibm.ws.runtime.component.DeployedApplicationImpl.start(DeployedApplicationImpl.java:938)
                      at com.ibm.ws.runtime.component.ApplicationMgrImpl.startApplication(ApplicationMgrImpl.java:740)
                      at com.ibm.ws.runtime.component.ApplicationMgrImpl.start(ApplicationMgrImpl.java:2092)
                      at com.ibm.ws.runtime.component.CompositionUnitMgrImpl.start(CompositionUnitMgrImpl.java:437)
                      at com.ibm.ws.runtime.component.CompositionUnitImpl.start(CompositionUnitImpl.java:122)
                      at com.ibm.ws.runtime.component.CompositionUnitMgrImpl.start(CompositionUnitMgrImpl.java:380)
                      at com.ibm.ws.runtime.component.CompositionUnitMgrImpl.access$300(CompositionUnitMgrImpl.java:105)
                      at com.ibm.ws.runtime.component.CompositionUnitMgrImpl$CUInitializer.run(CompositionUnitMgrImpl.java:928)
                      at com.ibm.wsspi.runtime.component.WsComponentImpl$AsynchInitializer.run(WsComponentImpl.java:349)
                      at com.ibm.ws.util.ThreadPool$Worker.run(ThreadPool.java:1527)

              --snip--
              FacesConfigur I org.apache.myfaces.config.FacesConfigurator feedWebAppConfig Reading config /WEB-INF/faces-config.xml
              AbstractFaces E org.apache.myfaces.webapp.AbstractFacesInitializer initFaces An error occured while initializing MyFaces: Class org.jboss.seam.jsf.SeamApplicationFactory is no javax.faces.application.ApplicationFactory
                                               java.lang.IllegalArgumentException: Class org.jboss.seam.jsf.SeamApplicationFactory is no javax.faces.application.ApplicationFactory
                      at javax.faces.FactoryFinder.newFactoryInstance(FactoryFinder.java:169)
                      at javax.faces.FactoryFinder.getFactory(FactoryFinder.java:141)
                      at org.apache.myfaces.config.FacesConfigurator.configureApplication(FacesConfigurator.java:611)
                      at org.apache.myfaces.config.FacesConfigurator.configure(FacesConfigurator.java:276)
                      at org.apache.myfaces.webapp.AbstractFacesInitializer.buildConfiguration(AbstractFacesInitializer.java:134)
                      at org.apache.myfaces.webapp.Jsp21FacesInitializer.initContainerIntegration(Jsp21FacesInitializer.java:64)
                      at org.apache.myfaces.webapp.AbstractFacesInitializer.initFaces(AbstractFacesInitializer.java:86)
                      at org.apache.myfaces.webapp.StartupServletContextListener.contextInitialized(StartupServletContextListener.java:82)
                      at com.ibm.ws.webcontainer.webapp.WebApp.notifyServletContextCreated(WebApp.java:1588)
                      at com.ibm.ws.webcontainer.webapp.WebApp.commonInitializationFinish(WebApp.java:350)
                      at com.ibm.ws.webcontainer.webapp.WebAppImpl.initialize(WebAppImpl.java:292)
                      at com.ibm.ws.webcontainer.webapp.WebGroupImpl.addWebApplication(WebGroupImpl.java:99)
                      at com.ibm.ws.webcontainer.VirtualHostImpl.addWebApplication(VirtualHostImpl.java:167)
                      at com.ibm.ws.webcontainer.WSWebContainer.addWebApp(WSWebContainer.java:722)
                      at com.ibm.ws.webcontainer.WSWebContainer.addWebApplication(WSWebContainer.java:607)
                      at com.ibm.ws.webcontainer.component.WebContainerImpl.install(WebContainerImpl.java:376)
                      at com.ibm.ws.webcontainer.component.WebContainerImpl.start(WebContainerImpl.java:668)
                      at com.ibm.ws.runtime.component.ApplicationMgrImpl.start(ApplicationMgrImpl.java:1162)
                      at com.ibm.ws.runtime.component.DeployedApplicationImpl.fireDeployedObjectStart(DeployedApplicationImpl.java:1313)
                      at com.ibm.ws.runtime.component.DeployedModuleImpl.start(DeployedModuleImpl.java:611)
                      at com.ibm.ws.runtime.component.DeployedApplicationImpl.start(DeployedApplicationImpl.java:938)
                      at com.ibm.ws.runtime.component.ApplicationMgrImpl.startApplication(ApplicationMgrImpl.java:740)
                      at com.ibm.ws.runtime.component.ApplicationMgrImpl.start(ApplicationMgrImpl.java:2092)
                      at com.ibm.ws.runtime.component.CompositionUnitMgrImpl.start(CompositionUnitMgrImpl.java:437)
                      at com.ibm.ws.runtime.component.CompositionUnitImpl.start(CompositionUnitImpl.java:122)
                      at com.ibm.ws.runtime.component.CompositionUnitMgrImpl.start(CompositionUnitMgrImpl.java:380)
                      at com.ibm.ws.runtime.component.CompositionUnitMgrImpl.access$300(CompositionUnitMgrImpl.java:105)
                      at com.ibm.ws.runtime.component.CompositionUnitMgrImpl$CUInitializer.run(CompositionUnitMgrImpl.java:928)
                      at com.ibm.wsspi.runtime.component.WsComponentImpl$
              AsynchInitializer.run(WsComponentImpl.java:349)
                      at com.ibm.ws.util.ThreadPool$Worker.run(ThreadPool.java:1527)

              • 4. Re: Seam 2.1 and WebSphere 7.0
                Denis Forveille Novice

                Ok. but are you using JSF-RI or MyFaces as JSF implementation? do you package any of the JSF-RI or MyFaces files with your app?
                WAS v7.0 provides JSF-RI v1.2-07 and MyFaces v1.2 libs.


                I think you should remove any of those files from your ear or check carefully your classloaders.
                Also the WAS infocenter gives info on how to configure either implementation: http://publib.boulder.ibm.com/infocenter/wasinfo/v7r0/topic/com.ibm.websphere.nd.multiplatform.doc/info/ae/ae/cweb_javaserver_faces.html


                FYI we don't include any JSF-RI file with our ear file and WAS use JSF-RI 1.2-07  "by default" without any configuration. Also the messages in the traceback seem to be related to EL... Our app is an JEE5/Servlet 2.5 app and so we also don't include any jsp* or el* libs (Except the jboss one) in our ear as they are provided by WAS


                And if it still does not work, file a PMR by IBM..

                • 5. Re: Seam 2.1 and WebSphere 7.0
                  Dimitri Giwerzew Newbie
                  Thank you very much, Denis!
                  The problem was among others the el* and JSF-RI libraries. Instead we use now JSF-RI 1.2-07 provided by WAS v7.0.
                  We changed also the Richfaces libs to 3.3.0.GA and it works fine with it.

                  Kind regards,
                  Dimitri