[ https://issues.apache.org/jira/browse/MYFACES-3104?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13240152#comment-13240152 ]
sajeev commented on MYFACES-3104: --------------------------------- We are experiencing the similar issue . The environment we are using is WebSphere 7 + GlassFish EL2.2 +MyFaces . With Class loading set to PARENT LAST. Glassfish EL api and impl jars are stored in WebInf/lib folder. It seems to me that WebSphere`s implementation of javax.servlet.jsp.JspApplicationContext i.e org.apache.jasper.runtime.JspApplicationContextImpl is complied with Jasper EL1 api version . When we are using the EL2.2 apis in our class path with Parent last setting. MyFaces loads and links the EL based classes from glass fish api and impl jars. Were as the org.apache.jasper.runtime.JspApplicationContextImpl loads the El from the its own jasper EL libraries located in j2ee.jar. as the JspApplication context is loaded on the container This mismatch in the loaded class files would cause teh verify error. Can you suggest any work around (One which dosent involve rebuilding MyFaces library) for El2.2 support on WebSphere 7 > MyFaces 2 with EL 2.2 in Websphere 7 > ------------------------------------ > > Key: MYFACES-3104 > URL: https://issues.apache.org/jira/browse/MYFACES-3104 > Project: MyFaces Core > Issue Type: Bug > Components: General > Affects Versions: 2.0.4 > Environment: WebSphere Platform 7.0.0.13 > Host Operating System is Windows XP, version 5.1 build 2600 Service Pack 3 > Java version = 1.6.0, Java Compiler = j9jit24, Java VM name = IBM J9 VM > Servlet API : 2.5 > JSP API : 2.1 > Reporter: mansour > Attachments: MyFacesEL2Sample_was7.zip > > > We have followed your documentation on the wiki in order to enable EL 2.2 > (http://wiki.apache.org/myfaces/HowToEnableEl22), it doesn't work on > Websphere 7. > - we have added the 2 jars (el-api-2.2.jar and el-impl-2.2.jar from Glassfish > implementation) in th classpath of the web application > - we have configured the web.xml like this : > <context-param> > <param-name>org.apache.myfaces.EXPRESSION_FACTORY</param-name> > <param-value>com.sun.el.ExpressionFactoryImpl</param-value> > </context-param> > [...] > <listener> > > <listener-class>org.apache.myfaces.webapp.StartupServletContextListener</listener-class> > </listener> > The web application starts without errors, > Problem : > 1) When the web application starts we have this first exception : > [04/04/11 11:24:39:136 CEST] 0000000a DefaultFacesC I Reading standard > config META-INF/standard-faces-config.xml > [04/04/11 11:24:39:277 CEST] 0000000a DefaultFacesC I Reading config > /WEB-INF/faces-config.xml > [04/04/11 11:24:39:823 CEST] 0000000a ExternalSpeci I MyFaces Bean > Validation support disabled > [04/04/11 11:24:39:855 CEST] 0000000a ApplicationIm I Couldn't discover the > current project stage, using Production > [04/04/11 11:24:39:855 CEST] 0000000a FacesConfigur I Serialization > provider : class > org.apache.myfaces.shared_impl.util.serial.DefaultSerialFactory > [04/04/11 11:24:39:855 CEST] 0000000a DefaultLifecy I Using > LifecycleProvider > org.apache.myfaces.config.annotation.AllAnnotationLifecycleProvider > [04/04/11 11:24:39:933 CEST] 0000000a FfdcProvider W > com.ibm.ws.ffdc.impl.FfdcProvider logIncident FFDC1003I: Incident FFDC émis > sur > C:\IBM\SDP75\runtimes\base_v7\profiles\was70profile2\logs\ffdc\server1_48704870_11.04.04_11.24.39.8706071861720806063404.txt > com.ibm.ws.webcontainer.webapp.WebApp.notifyServletContextCreated 1341 > [04/04/11 11:24:39:933 CEST] 0000000a webapp E > com.ibm.ws.webcontainer.webapp.WebApp notifyServletContextCreated SRVE0283E: > Exception interceptée lors de l''initialisation du contexte : {0} > java.lang.VerifyError: > javax/servlet/jsp/JspApplicationContext.addELResolver(Ljavax/el/ELResolver;)V > at > org.apache.myfaces.webapp.Jsp21FacesInitializer.configureResolverForJSP(Jsp21FacesInitializer.java:123) > at > org.apache.myfaces.webapp.Jsp21FacesInitializer.initContainerIntegration(Jsp21FacesInitializer.java:77) > at > org.apache.myfaces.webapp.AbstractFacesInitializer.initFaces(AbstractFacesInitializer.java:126) > at > org.apache.myfaces.webapp.StartupServletContextListener.contextInitialized(StartupServletContextListener.java:111) > at > com.ibm.ws.webcontainer.webapp.WebApp.notifyServletContextCreated(WebApp.java:1681) > at > com.ibm.ws.webcontainer.webapp.WebApp.commonInitializationFinish(WebApp.java:374) > at > com.ibm.ws.webcontainer.webapp.WebAppImpl.initialize(WebAppImpl.java:299) > at > com.ibm.ws.webcontainer.webapp.WebGroupImpl.addWebApplication(WebGroupImpl.java:100) > at > com.ibm.ws.webcontainer.VirtualHostImpl.addWebApplication(VirtualHostImpl.java:166) > at > com.ibm.ws.webcontainer.WSWebContainer.addWebApp(WSWebContainer.java:731) > at > com.ibm.ws.webcontainer.WSWebContainer.addWebApplication(WSWebContainer.java:616) > 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:1122) > at > com.ibm.ws.runtime.component.DeployedApplicationImpl.fireDeployedObjectStart(DeployedApplicationImpl.java:1319) > at > com.ibm.ws.runtime.component.DeployedModuleImpl.start(DeployedModuleImpl.java:609) > at > com.ibm.ws.runtime.component.DeployedApplicationImpl.start(DeployedApplicationImpl.java:944) > at > com.ibm.ws.runtime.component.ApplicationMgrImpl.startApplication(ApplicationMgrImpl.java:725) > at > com.ibm.ws.runtime.component.ApplicationMgrImpl.start(ApplicationMgrImpl.java:2046) > at > com.ibm.ws.runtime.component.CompositionUnitMgrImpl.start(CompositionUnitMgrImpl.java:439) > at > com.ibm.ws.runtime.component.CompositionUnitImpl.start(CompositionUnitImpl.java:123) > at > com.ibm.ws.runtime.component.CompositionUnitMgrImpl.start(CompositionUnitMgrImpl.java:382) > at > com.ibm.ws.runtime.component.CompositionUnitMgrImpl.access$300(CompositionUnitMgrImpl.java:110) > at > com.ibm.ws.runtime.component.CompositionUnitMgrImpl$CUInitializer.run(CompositionUnitMgrImpl.java:949) > at > com.ibm.wsspi.runtime.component.WsComponentImpl$_AsynchInitializer.run(WsComponentImpl.java:349) > at com.ibm.ws.util.ThreadPool$Worker.run(ThreadPool.java:1563) > 2) This second exception appears in the log : > [04/04/11 11:24:53:436 CEST] 00000018 webapp E > com.ibm.ws.webcontainer.webapp.WebApp notifyServletContextDestroyed > SRVE0285E: Exception interceptée lors de la destruction du contexte : {0} > java.lang.IllegalStateException: No > Factories configured for this Application. This happens if the > faces-initialization does not work at all - make sure that you properly > include all configuration settings necessary for a basic faces application > and that all the necessary libs are included. Also check the logging output > of your web application and your container for any exceptions! > If you did that and find nothing, the mistake might be due to the fact that > you use some special web-containers which do not support registering > context-listeners via TLD files and a context listener is not setup in your > web.xml. > A typical config looks like this; > <listener> > > <listener-class>org.apache.myfaces.webapp.StartupServletContextListener</listener-class> > </listener> > at javax.faces.FactoryFinder.getFactory(FactoryFinder.java:196) > [...] > So can you tell us please how to configure EL 2.2 on Websphere 7 ? -- This message is automatically generated by JIRA. If you think it was sent incorrectly, please contact your JIRA administrators: https://issues.apache.org/jira/secure/ContactAdministrators!default.jspa For more information on JIRA, see: http://www.atlassian.com/software/jira