`

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 时,遵循最佳实践,如合理使用组件、优化...

    RichFaces中的Ajax组件的使用指南

    ### RichFaces中的Ajax组件使用指南 #### 一、引言 在现代Web开发中,Ajax技术因其能够实现实时更新页面部分元素而不刷新整个页面的能力而受到广泛欢迎。RichFaces作为一个增强JSF(JavaServer Faces)功能的开源...

    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开发指南3.3.3

    通过内建的 Ajax 支持和高度可定制的组件,RichFaces 能够方便地集成到 JSF 应用程序中,增强其功能性和用户体验。 #### 二、RichFaces的特点 1. **JSF 生命周期的无缝集成**: - **动作监听器与值改变监听器**:...

    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