`

richfaces中facelet版本升级到2时的典型错误和解决办法

    博客分类:
  • web
阅读更多
2010-8-31 9:48:35 com.sun.faces.config.ConfigManager initialize
信息: Unsanitized stacktrace from failed start...
javax.faces.view.facelets.FaceletException: Must have a Constructor that takes in a ComponentConfig
	at com.sun.faces.facelets.tag.AbstractTagLibrary$UserComponentHandlerFactory.<init>(AbstractTagLibrary.java:289)
	at com.sun.faces.facelets.tag.AbstractTagLibrary.addComponent(AbstractTagLibrary.java:519)
	at com.sun.faces.facelets.tag.TagLibraryImpl.putComponent(TagLibraryImpl.java:111)
	at com.sun.faces.config.processor.FaceletTaglibConfigProcessor.processComponent(FaceletTaglibConfigProcessor.java:569)
	at com.sun.faces.config.processor.FaceletTaglibConfigProcessor.processTags(FaceletTaglibConfigProcessor.java:361)
	at com.sun.faces.config.processor.FaceletTaglibConfigProcessor.processTagLibrary(FaceletTaglibConfigProcessor.java:314)
	at com.sun.faces.config.processor.FaceletTaglibConfigProcessor.process(FaceletTaglibConfigProcessor.java:263)
	at com.sun.faces.config.ConfigManager.initialize(ConfigManager.java:337)
	at com.sun.faces.config.ConfigureListener.contextInitialized(ConfigureListener.java:223)
	at org.apache.catalina.core.StandardContext.listenerStart(StandardContext.java:4323)
	at org.apache.catalina.core.StandardContext.startInternal(StandardContext.java:4780)
	at org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:139)
	at org.apache.catalina.core.ContainerBase.startInternal(ContainerBase.java:988)
	at org.apache.catalina.core.StandardHost.startInternal(StandardHost.java:771)
	at org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:139)
	at org.apache.catalina.core.ContainerBase.startInternal(ContainerBase.java:988)
	at org.apache.catalina.core.StandardEngine.startInternal(StandardEngine.java:275)
	at org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:139)
	at org.apache.catalina.core.StandardService.startInternal(StandardService.java:427)
	at org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:139)
	at org.apache.catalina.core.StandardServer.startInternal(StandardServer.java:649)
	at org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:139)
	at org.apache.catalina.startup.Catalina.start(Catalina.java:585)
	at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
	at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source)
	at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)
	at java.lang.reflect.Method.invoke(Unknown Source)
	at org.apache.catalina.startup.Bootstrap.start(Bootstrap.java:288)
	at org.apache.catalina.startup.Bootstrap.main(Bootstrap.java:415)
Caused by: java.lang.NoSuchMethodException: org.ajax4jsf.taglib.html.facelets.ActionParamHandler.<init>(javax.faces.view.facelets.ComponentConfig)
	at java.lang.Class.getConstructor0(Unknown Source)
	at java.lang.Class.getConstructor(Unknown Source)
	at com.sun.faces.facelets.tag.AbstractTagLibrary$UserComponentHandlerFactory.<init>(AbstractTagLibrary.java:287)
	... 28 more
2010-8-31 9:48:35 org.apache.catalina.core.StandardContext listenerStart
严重: Exception sending context initialized event to listener instance of class com.sun.faces.config.ConfigureListener
com.sun.faces.config.ConfigurationException: CONFIGURATION FAILED! org.ajax4jsf.taglib.html.facelets.ActionParamHandler.<init>(javax.faces.view.facelets.ComponentConfig)
	at com.sun.faces.config.ConfigManager.initialize(ConfigManager.java:354)
	at com.sun.faces.config.ConfigureListener.contextInitialized(ConfigureListener.java:223)
	at org.apache.catalina.core.StandardContext.listenerStart(StandardContext.java:4323)
	at org.apache.catalina.core.StandardContext.startInternal(StandardContext.java:4780)
	at org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:139)
	at org.apache.catalina.core.ContainerBase.startInternal(ContainerBase.java:988)
	at org.apache.catalina.core.StandardHost.startInternal(StandardHost.java:771)
	at org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:139)
	at org.apache.catalina.core.ContainerBase.startInternal(ContainerBase.java:988)
	at org.apache.catalina.core.StandardEngine.startInternal(StandardEngine.java:275)
	at org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:139)
	at org.apache.catalina.core.StandardService.startInternal(StandardService.java:427)
	at org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:139)
	at org.apache.catalina.core.StandardServer.startInternal(StandardServer.java:649)
	at org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:139)
	at org.apache.catalina.startup.Catalina.start(Catalina.java:585)
	at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
	at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source)
	at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)
	at java.lang.reflect.Method.invoke(Unknown Source)
	at org.apache.catalina.startup.Bootstrap.start(Bootstrap.java:288)
	at org.apache.catalina.startup.Bootstrap.main(Bootstrap.java:415)
Caused by: java.lang.NoSuchMethodException: org.ajax4jsf.taglib.html.facelets.ActionParamHandler.<init>(javax.faces.view.facelets.ComponentConfig)
	at java.lang.Class.getConstructor0(Unknown Source)
	at java.lang.Class.getConstructor(Unknown Source)
	at com.sun.faces.facelets.tag.AbstractTagLibrary$UserComponentHandlerFactory.<init>(AbstractTagLibrary.java:287)
	at com.sun.faces.facelets.tag.AbstractTagLibrary.addComponent(AbstractTagLibrary.java:519)
	at com.sun.faces.facelets.tag.TagLibraryImpl.putComponent(TagLibraryImpl.java:111)
	at com.sun.faces.config.processor.FaceletTaglibConfigProcessor.processComponent(FaceletTaglibConfigProcessor.java:569)
	at com.sun.faces.config.processor.FaceletTaglibConfigProcessor.processTags(FaceletTaglibConfigProcessor.java:361)
	at com.sun.faces.config.processor.FaceletTaglibConfigProcessor.processTagLibrary(FaceletTaglibConfigProcessor.java:314)
	at com.sun.faces.config.processor.FaceletTaglibConfigProcessor.process(FaceletTaglibConfigProcessor.java:263)
	at com.sun.faces.config.ConfigManager.initialize(ConfigManager.java:337)
	... 21 more
2010-8-31 9:48:35 org.apache.catalina.core.StandardContext startInternal
严重: Error listenerStart
2010-8-31 9:48:35 org.apache.catalina.core.StandardContext startInternal
严重: Context [/TestRichfaces333] startup failed due to previous errors
2010-8-31 9:48:35 com.sun.faces.config.ConfigureListener contextDestroyed
严重: Unexpected exception when attempting to tear down the Mojarra runtime
java.lang.IllegalStateException: 启动时没有正确初始化应用程序,无法找到工厂:javax.faces.application.ApplicationFactory
	at javax.faces.FactoryFinder$FactoryManager.getFactory(FactoryFinder.java:804)
	at javax.faces.FactoryFinder.getFactory(FactoryFinder.java:306)
	at com.sun.faces.config.InitFacesContext.getApplication(InitFacesContext.java:104)
	at com.sun.faces.config.ConfigureListener.contextDestroyed(ConfigureListener.java:309)
	at org.apache.catalina.core.StandardContext.listenerStop(StandardContext.java:4362)
	at org.apache.catalina.core.StandardContext.stopInternal(StandardContext.java:4933)
	at org.apache.catalina.util.LifecycleBase.stop(LifecycleBase.java:215)
	at org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:147)
	at org.apache.catalina.core.ContainerBase.startInternal(ContainerBase.java:988)
	at org.apache.catalina.core.StandardHost.startInternal(StandardHost.java:771)
	at org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:139)
	at org.apache.catalina.core.ContainerBase.startInternal(ContainerBase.java:988)
	at org.apache.catalina.core.StandardEngine.startInternal(StandardEngine.java:275)
	at org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:139)
	at org.apache.catalina.core.StandardService.startInternal(StandardService.java:427)
	at org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:139)
	at org.apache.catalina.core.StandardServer.startInternal(StandardServer.java:649)
	at org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:139)
	at org.apache.catalina.startup.Catalina.start(Catalina.java:585)
	at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
	at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source)
	at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)
	at java.lang.reflect.Method.invoke(Unknown Source)
	at org.apache.catalina.startup.Bootstrap.start(Bootstrap.java:288)
	at org.apache.catalina.startup.Bootstrap.main(Bootstrap.java:415)
 

首先修改faces-config.xml: 配成2.0版本,里面不要配置view handler

<?xml version="1.0" encoding="UTF-8"?>
<faces-config version="2.0" xmlns="http://java.sun.com/xml/ns/javaee"
    xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
    xsi:schemaLocation="http://java.sun.com/xml/ns/javaee http://java.sun.com/xml/ns/javaee/web-facesconfig_2_0.xsd">
</faces-config>

 

然后修改web.xml: 确认包含以下配置

<context-param>
    <param-name>org.ajax4jsf.VIEW_HANDLERS</param-name>
    <param-value>com.sun.facelets.FaceletViewHandler</param-value>
</context-param>

分享到:
评论
2 楼 marshan 2014-12-21  
启动失败的原因是加载的类版本冲突,因此你首先要保证依赖的版本和配置的版本一致,然后具体定位导致无法启动的代码行,最终确定是冲突、配置不对,还是代码实现的问题。
1 楼 zhaohang6688 2014-12-20  
请问我按照你的方式修改还是报错  错误信息还是这个 是为什么啊?

相关推荐

    richfaces中文开发文档

    JSF是一个标准的MVC框架,而RichFaces作为JSF的扩展,可以无缝集成到JSF应用程序中。通过定义JSF组件和事件处理器,RichFaces能够提供更丰富的用户界面功能,同时保持JSF的结构化开发模式。 **四、RichFaces的生命...

    richfaces中文学习教程

    关于richfaces的一些比较好的资料,希望大家看了能有收获

    jboss-richfaces-3.0.0

    3. **错误处理与调试**:RichFaces提供了详细的日志输出和错误报告,帮助开发者诊断和解决应用中的问题。 **五、性能优化** RichFaces 3.0.0在设计时就考虑了性能,但实际应用中仍需根据项目需求进行调整。这可能...

    JSF2和RICHFACES4使用指南

    JSF2和RICHFACES4使用指南

    RichFaces中的ajax组件实现刷新验证码

    在探讨“RichFaces中的ajax组件实现刷新验证码”的技术细节时,我们首先需要理解RichFaces框架以及AJAX在其中的应用。RichFaces是一个基于JavaServer Faces(JSF)的开源UI组件库,它提供了丰富的用户界面组件,包括...

    richfaces-ui-3.3.GA jar

    8. **版本升级与兼容性**:RichFaces 3.3 版本可能与特定的 JSF 版本和其他第三方库兼容,因此在升级或更换版本时需要注意兼容性问题。 9. **最佳实践**:在使用 RichFaces 时,遵循最佳实践,如合理使用组件、优化...

    netbean中richfaces的插件

    7. **版本管理**:对于不同的RichFaces版本,插件可能会提供相应的支持,使得升级和回退版本变得容易。 总之,"NetBean中RichFaces的插件"极大地增强了NetBeans IDE对RichFaces框架的支持,使得开发者在使用此框架...

    jsf中richfaces的jar包及源文件等

    2. **学习RichFaces组件**:研究RichFaces提供的组件,如数据表、树形结构、图表和对话框等,以及它们的配置和使用方法。 3. **掌握Ajax使用**:理解Ajax在RichFaces中的工作方式,如何通过Ajax行为事件更新页面部分...

    RichFaces 3.3 帮助文档(英文)

    - **支持的浏览器:** 明确指出支持的浏览器类型及其版本,例如Internet Explorer 6+、Firefox 2+等,以确保用户在不同浏览器中的体验一致性。 #### 三、快速入门指南 - **下载RichFaces:** 提供了获取最新版本...

    richfaces 相关资料2

    3. **Richfaces構建節點樹——EJB+JSF+SEAM 使用Richfaces中的Tree和TreeNode組件(转).docx** - 这篇文章可能深入介绍了如何结合Enterprise JavaBeans (EJB)、JavaServer Faces (JSF) 和Seam框架,使用RichFaces的...

    Richfaces组件使用指南

    它提供的Ajax支持是完全集成到JSF生命周期内的,这意味着在处理Ajax请求时,RichFaces可以触发动作监听器、值更改监听器,执行服务器端验证和转换。 RichFaces主要包含两个组件库:Core Ajax和UI库。Core库允许将...

    richfaces-ui-3.2.1

    在"richfaces-ui-3.2.1.GA"这个版本中,“GA”代表General Availability,意味着这是经过广泛测试和验证的稳定版本,适合生产环境使用。这一版本对3.2.0进行了优化和修复,旨在提高性能和稳定性,同时可能引入了新的...

    richfaces3.2用户手册的pdf版

    - **支持的Java版本**:RichFaces 3.2 支持特定版本的Java,这些版本确保了框架的兼容性和稳定性。 - **支持的JavaServer Faces实现和框架**:为了确保与JSF 的良好集成,RichFaces 需要与特定的JSF 实现和框架进行...

    Richfaces ShowCase离线包

    **Richfaces ShowCase离线包** 是一个专为开发者设计的资源包,它包含了Richfaces框架的演示示例,能够帮助用户在没有网络连接的情况下也能深入理解和学习Richfaces的功能和用法。这个离线包特别适合那些需要在本地...

    richfaces(里面包含JAR包)

    6. **集成与配置**:在Eclipse中,开发者需要将RichFaces的JAR包添加到项目的构建路径中,然后在web.xml文件中配置JSF和RichFaces的上下文参数和监听器。 7. **AJAX支持**:RichFaces通过Ajax4jsf库提供了AJAX功能...

    richfaces-ui-3.3.1.GA-bin

    本文将详细探讨"richfaces-ui-3.3.1.GA-bin"这个压缩包中的核心知识点,带你领略RichFaces 3.3.1 GA版本的魅力。 一、RichFaces概述 RichFaces是一个开源项目,由Jboss公司(现Red Hat)维护,它扩展了JSF规范,...

Global site tag (gtag.js) - Google Analytics