项目启动中出现如下错误,请大侠们帮忙看下com.caucho.config.ConfigException: listener-class 'com.sun.faces.application.WebappLifecycleListener' does not implement any web-app listener interface.                 at com.caucho.config.ConfigException.create(ConfigException.java:166)                 at _jsp._2._index__jsp.caucho_init(_index__jsp.java:710)                 at com.caucho.jsp.JspManager.loadPage(JspManager.java:395) at com.caucho.jsp.JspManager.preload(JspManager.java:373)                 at com.caucho.jsp.JspManager.compile(JspManager.java:234)                 at com.caucho.jsp.JspManager.createPage(JspManager.java:187)                 at com.caucho.jsp.JspManager.createPage(JspManager.java:168)                 at com.caucho.jsp.PageManager.getPage(PageManager.java:339)                 at com.caucho.jsp.PageManager.getPage(PageManager.java:269)                 at com.caucho.jsp.PageManager.getPage(PageManager.java:252)                 at com.caucho.jsp.QServlet.getSubPage(QServlet.java:294)                 at com.caucho.jsp.QServlet.getPage(QServlet.java:210)                 at com.caucho.server.dispatch.PageFilterChain.compilePage(PageFilterChain.java:240)                 at com.caucho.server.dispatch.PageFilterChain.doFilter(PageFilterChain.java:144)                 at org.apache.struts2.dispatcher.ng.filter.StrutsPrepareAndExecuteFilter.doFilter(StrutsPrepareAndExecuteFilter.java:88)                 at com.caucho.server.dispatch.FilterFilterChain.doFilter(FilterFilterChain.java:89)                 at org.apache.struts2.dispatcher.ActionContextCleanUp.doFilter(ActionContextCleanUp.java:102)                 at com.caucho.server.dispatch.FilterFilterChain.doFilter(FilterFilterChain.java:89)                 at com.raiyi.wordfilter.WordFilter.doFilter(WordFilter.java:37)                 at com.caucho.server.dispatch.FilterFilterChain.doFilter(FilterFilterChain.java:89)                 at com.caucho.server.webapp.DispatchFilterChain.doFilter(DispatchFilterChain.java:126)                 at com.caucho.server.dispatch.ServletInvocation.service(ServletInvocation.java:289)                 at com.caucho.server.webapp.RequestDispatcherImpl.forward(RequestDispatcherImpl.java:298)                 at com.caucho.server.webapp.RequestDispatcherImpl.forward(RequestDispatcherImpl.java:116)                 at org.apache.struts2.dispatcher.ServletDispatcherResult.doExecute(ServletDispatcherResult.java:157)                 at org.apache.struts2.dispatcher.StrutsResultSupport.execute(StrutsResultSupport.java:186)                 at com.opensymphony.xwork2.DefaultActionInvocation.executeResult(DefaultActionInvocation.java:373)                 at com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:277)                 at com.opensymphony.xwork2.interceptor.DefaultWorkflowInterceptor.doIntercept(DefaultWorkflowInterceptor.java:176)                 at com.opensymphony.xwork2.interceptor.MethodFilterInterceptor.intercept(MethodFilterInterceptor.java:98)                 at com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:248)                 at com.opensymphony.xwork2.validator.ValidationInterceptor.doIntercept(ValidationInterceptor.java:263)                 at org.apache.struts2.interceptor.validation.AnnotationValidationInterceptor.doIntercept(AnnotationValidationInterceptor.java:68)                 at com.opensymphony.xwork2.interceptor.MethodFilterInterceptor.intercept(MethodFilterInterceptor.java:98)                 at com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:248)                 at com.opensymphony.xwork2.interceptor.ConversionErrorInterceptor.intercept(ConversionErrorInterceptor.java:138)                 at com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:248)                 at com.opensymphony.xwork2.interceptor.ParametersInterceptor.doIntercept(ParametersInterceptor.java:207)                 at com.opensymphony.xwork2.interceptor.MethodFilterInterceptor.intercept(MethodFilterInterceptor.java:98)                 at com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:248)                 at com.opensymphony.xwork2.interceptor.ParametersInterceptor.doIntercept(ParametersInterceptor.java:207)                 at com.opensymphony.xwork2.interceptor.MethodFilterInterceptor.intercept(MethodFilterInterceptor.java:98)                 at com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:248)                 at com.opensymphony.xwork2.interceptor.StaticParametersInterceptor.intercept(StaticParametersInterceptor.java:190)                 at com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:248)                 at org.apache.struts2.interceptor.MultiselectInterceptor.intercept(MultiselectInterceptor.java:75)                 at com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:248)                 at org.apache.struts2.interceptor.CheckboxInterceptor.intercept(CheckboxInterceptor.java:94)                 at com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:248)                 at org.apache.struts2.interceptor.FileUploadInterceptor.intercept(FileUploadInterceptor.java:243)                 at com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:248)                 at com.opensymphony.xwork2.interceptor.ModelDrivenInterceptor.intercept(ModelDrivenInterceptor.java:100)                 at com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:248)                 at com.opensymphony.xwork2.interceptor.ScopedModelDrivenInterceptor.intercept(ScopedModelDrivenInterceptor.java:141)                 at com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:248)                 at org.apache.struts2.interceptor.debugging.DebuggingInterceptor.intercept(DebuggingInterceptor.java:270)                 at com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:248)                 at com.opensymphony.xwork2.interceptor.ChainingInterceptor.intercept(ChainingInterceptor.java:145)                 at com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:248) 
               Caused by: com.caucho.config.ConfigException: listener-class 'com.sun.faces.application.WebappLifecycleListener' does not implement any web-app listener interface.                 at com.caucho.server.webapp.ListenerConfig.setListenerClass(ListenerConfig.java:90)                 at com.caucho.jsp.cfg.TldListener.register(TldListener.java:97)                 at com.caucho.jsp.cfg.TldPreload.initListeners(TldPreload.java:144)                 at com.caucho.jsp.TldManager.init(TldManager.java:243) 

解决方案 »

  1.   

    com.caucho.config.ConfigException: listener-class 'com.sun.faces.application.WebappLifecycleListener' does not implement any web-app listener interface. 
    说你实现的类中没有实现webapplistener的相关接口。。
      

  2.   

    This happens since Resin comes with its own JSF implementation: (resin-4.0.26/lib/jsf-mojarra-2.1.3.jar) that is loaded first.To fix this, just remove the jsf-impl.jar from the deployed portlet or from the portlet war. http://www.liferay.com/zh_CN/community/wiki/-/wiki/Main/Resin+4+tips#section-Resin+4+tips-Deploying+JSF+portlets