Richfaces 和 Primefaces 彼此兼容吗?

2024-04-03

我现在使用 Primefaces-2.1,我尝试将 Richfaces-3.3.3 集成到我的应用程序中以便使用<rich:jQuery>. My <p:commandButton>, <p:commandLink>一旦我集成了 Richfaces,就停止工作,我给了我这个例外:知道为什么吗?

Exception in the filter chain
javax.servlet.ServletException: Index: 0, Size: 0
at javax.faces.webapp.FacesServlet.service(FacesServlet.java:325)
at org.apache.catalina.core.StandardWrapper.service(StandardWrapper.java:1523)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:343)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:215)
at com.scholar.filter.MyFilter.doFilter(MyFilter.java:36)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:256)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:215)
at org.ajax4jsf.webapp.BaseXMLFilter.doXmlFilter(BaseXMLFilter.java:206)
at org.ajax4jsf.webapp.BaseFilter.handleRequest(BaseFilter.java:290)
at org.ajax4jsf.webapp.BaseFilter.processUploadsAndHandleRequest(BaseFilter.java:388)
at org.ajax4jsf.webapp.BaseFilter.doFilter(BaseFilter.java:515)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:256)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:215)
at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:277)
at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:188)
at org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:641)
at com.sun.enterprise.web.WebPipeline.invoke(WebPipeline.java:97)
at com.sun.enterprise.web.PESessionLockingStandardPipeline.invoke(PESessionLockingStandardPipeline.java:85)
at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:185)
at org.apache.catalina.connector.CoyoteAdapter.doService(CoyoteAdapter.java:325)
at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:226)
at com.sun.enterprise.v3.services.impl.ContainerMapper.service(ContainerMapper.java:165)
at com.sun.grizzly.http.ProcessorTask.invokeAdapter(ProcessorTask.java:791)
at com.sun.grizzly.http.ProcessorTask.doProcess(ProcessorTask.java:693)
at com.sun.grizzly.http.ProcessorTask.process(ProcessorTask.java:954)
at com.sun.grizzly.http.DefaultProtocolFilter.execute(DefaultProtocolFilter.java:170)
at com.sun.grizzly.DefaultProtocolChain.executeProtocolFilter(DefaultProtocolChain.java:135)
at com.sun.grizzly.DefaultProtocolChain.execute(DefaultProtocolChain.java:102)
at com.sun.grizzly.DefaultProtocolChain.execute(DefaultProtocolChain.java:88)
at com.sun.grizzly.http.HttpProtocolChain.execute(HttpProtocolChain.java:76)
at com.sun.grizzly.ProtocolChainContextTask.doCall(ProtocolChainContextTask.java:53)
at com.sun.grizzly.SelectionKeyContextTask.call(SelectionKeyContextTask.java:57)
at com.sun.grizzly.ContextTask.run(ContextTask.java:69)
at com.sun.grizzly.util.AbstractThreadPool$Worker.doWork(AbstractThreadPool.java:330)
at com.sun.grizzly.util.AbstractThreadPool$Worker.run(AbstractThreadPool.java:309)
at java.lang.Thread.run(Thread.java:637)

Caused by: java.lang.IndexOutOfBoundsException: Index: 0, Size: 0
at java.util.ArrayList.RangeCheck(ArrayList.java:547)
at java.util.ArrayList.get(ArrayList.java:322)
at javax.faces.component.AttachedObjectListHolder.restoreState(AttachedObjectListHolder.java:161)
at javax.faces.component.UIComponentBase.restoreState(UIComponentBase.java:1427)
at javax.faces.component.UIComponentBase.processRestoreState(UIComponentBase.java:1202)
at javax.faces.component.UIComponentBase.processRestoreState(UIComponentBase.java:1217)
at javax.faces.component.UIComponentBase.processRestoreState(UIComponentBase.java:1217)
at javax.faces.component.UIComponentBase.processRestoreState(UIComponentBase.java:1217)
at javax.faces.component.UIViewRoot.processRestoreState(UIViewRoot.java:865)
at org.ajax4jsf.component.AjaxViewRoot.processRestoreState(AjaxViewRoot.java:761)
at org.ajax4jsf.application.AjaxStateManager.restoreView(AjaxStateManager.java:456)
at com.sun.faces.application.view.ViewHandlingStrategy.restoreView(ViewHandlingStrategy.java:131)
at com.sun.faces.application.view.FaceletViewHandlingStrategy.restoreView(FaceletViewHandlingStrategy.java:430)
at com.sun.faces.application.view.MultiViewHandler.restoreView(MultiViewHandler.java:143)
at javax.faces.application.ViewHandlerWrapper.restoreView(ViewHandlerWrapper.java:288)
at org.ajax4jsf.application.ViewHandlerWrapper.restoreView(ViewHandlerWrapper.java:107)
at com.sun.faces.lifecycle.RestoreViewPhase.execute(RestoreViewPhase.java:199)
at com.sun.faces.lifecycle.Phase.doPhase(Phase.java:101)
at com.sun.faces.lifecycle.RestoreViewPhase.doPhase(RestoreViewPhase.java:110)
at com.sun.faces.lifecycle.LifecycleImpl.execute(LifecycleImpl.java:118)
at javax.faces.webapp.FacesServlet.service(FacesServlet.java:312)

这是我的web.xml

<servlet>
    <servlet-name>Faces Servlet</servlet-name>
    <servlet-class>javax.faces.webapp.FacesServlet</servlet-class>
    <load-on-startup>1</load-on-startup>
</servlet>
<servlet-mapping>
    <servlet-name>Faces Servlet</servlet-name>
    <url-pattern>*.jsf</url-pattern>
</servlet-mapping>
<filter>
    <display-name>RichFaces Filter</display-name>
    <filter-name>richfaces</filter-name>
    <filter-class>org.ajax4jsf.Filter</filter-class>
</filter>

<filter-mapping>
    <filter-name>richfaces</filter-name>
    <servlet-name>Faces Servlet</servlet-name>
    <dispatcher>REQUEST</dispatcher>
    <dispatcher>FORWARD</dispatcher>
    <dispatcher>INCLUDE</dispatcher>
</filter-mapping>

这是我包含的所有库:
Primefaces-2.1
Richfaces-3.3.3
Commons-Logging-1.1.1
Commons-Digester-2.0
Commons-Beanutils-1.8.3
JHighlight-1.0


虽然没有正式记录(据我所知),但一般(和逻辑上)的共识是,您通常不能像这样混合基于 JSF 1.x 的 Ajax 和 CSS/JS 糖化库,因为它们可能有不同的(因此,冲突的) ) 查看状态和资源处理的方式。 JSF 2.x 应该会带来变化,因为它标准化了新 API 中的部分(Ajaxical)视图状态处理以及资源(CSS/JS)处理。 RichFaces 3.x 不完全兼容 JSF 2.0,而 PrimeFaces 2.x 则完全兼容,因此存在此冲突。

RichFaces 4.x 应完全兼容 JSF 2.0。但即便如此,当谈到混合这样的“重量级”Ajax/CSS/JS 库时,我并没有强烈的成功感。 “原始”CSS 和 JS 区域仍然存在冲突风险,因为 JSF 规范尚未对此进行标准化。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

Richfaces 和 Primefaces 彼此兼容吗? 的相关文章

随机推荐

  • valgrind 在多线程套接字程序中停止

    我正在使用 valgrind 运行多线程套接字程序 客户端将通过 TCP 向服务器发送请求 然后忙于等待布尔值 当调用服务于服务器响应的回调函数时 将设置该布尔值 一旦收到响应 并且设置了布尔标志 服务器将再次发出请求 并在循环中重复执行此
  • 表格的 CSS 过渡

    我有多个表排成一排 当一个人是selected 它应该展开一列 直到现在隐藏 几时取消选择 它应该慢慢收缩 我尝试使用 CSS 转换 但是当单元格中没有文本时 收缩不起作用 column2 background color ddd widt
  • 如何关闭Flex中的所有弹出窗口?

    我想通过按下按钮来显示图像上的所有弹出窗口 已经弹出并单独关闭 并希望在按下另一个按钮时关闭所有这些窗口 任何帮助表示赞赏 尝试这个 package com devahead utils import flash display Displ
  • Selenium 测试运行太快,没有等待单选按钮被选择

    我有一个 Selenium Grid 和 WebDriver 2 48 2 测试 运行速度太快 大多数情况下 测试会停止 因为在按下按钮之前未选择单选按钮 单选按钮是使用基于 JSON 文件的 JavaScript 设置的 可以在一个部分中
  • cocoapods 同步:ld:找不到框架 DATAFilter,链接器命令失败,退出代码 1

    我正在尝试同步 https github com hyperoslo Sync https github com hyperoslo Sync 在我的 em Xcode iOS Swift 项目中工作 我在 Carthage 框架依赖方面有
  • 当用户平移地图时,iOS 6 中的地图注释不会保持旋转

    真的很想回答这个问题https devforums apple com message 723468 https devforums apple com message 723468 我无法发布详细信息 因为它是关于 iOS 6 的 并且是
  • 如何在某些数据结构中表示奇怪的图

    表示图的一种简单方法是使用以下形式的数据结构 1 2 3 2 1 3 3 1 2 该字典中的键是节点 边由它们连接到的其他节点的列表表示 如果链接不对称 此数据结构也可以轻松表示有向图 1 2 2 3 3 1 我对图论了解不多 所以我要提出
  • 选项 importNotUsedAsValues 已弃用

    有人可以帮我解决这个问题吗jsonfig json为一个精简的项目文件 它说的是importsNotUsedAsValues选项应替换为verbatimModuleSyntax compilerOptions moduleResolutio
  • 使用pyserial(python串口)的二进制数据

    pyserial中的serial write 方法似乎只发送字符串数据 我有像 0xc0 0x04 0x00 这样的数组 并且希望能够通过串行端口发送 接收它们 是否有针对原始 I O 的单独方法 我想我可能需要将数组更改为 xc0 x04
  • div 之间的换行会呈现一个空格。如何从 HTML 中消除它?

    我有以下布局 div style width 100px div style width 50 display inline block div1 div div style width 50 display inline block di
  • 数据切换和数据目标不起作用

    我一直在寻找不同的解决方案 但到目前为止没有一个能帮助我 我的下拉菜单不起作用 因为数据切换和数据目标没有 被识别 至少这就是我认为它不起作用的原因 我似乎找不到解决方案 所以我希望这里有人可以帮助我 这是代码
  • 使用递归在 C 中实现单链表:我做错了什么?

    我试图编写的程序的提示是这样的 创建一个链表和一组操作它的函数 所有循环 必须使用递归来完成 以下功能是 该列表将使用的函数 isempty 如果列表为空则返回true 否则返回true find v 查找某个值并返回其索引 如果不成功 则
  • Rails 4,如何正确配置smtp设置(gmail)

    我正在尝试在 Rails 4 中创建一个联系表单 我在这里进行了一些挖掘 并且能够让大部分内容正常工作 在这里关注 sethfri的工作Rails 4 中的联系表格邮寄程序 https stackoverflow com questions
  • 如何在端口 443 上运行 Spring Boot

    我在使用我们的 Spring Boot 应用程序之一时遇到了问题 我们让它在端口 8443 上使用 https 运行 一切正常 现在 我们正在构建与外部支付处理器的集成 它们要求我们在应用程序的端口 443 上有一个回调端点 一些研究告诉我
  • 为什么空锚标记 href 中使用 # 约定?

    我知道最好不要留下空的锚标记 在 jQuery 和其他语法中 我注意到每个人通常都使用 来填补空白 a href anchor text a 这个角色比用其他东西填充它更好还是更坏 例如 a href anchor text a 我没有理由
  • 有没有办法在 CSS 中指定文本或标题数字的使用?

    我选择的字体通常默认为文本数字 这是我喜欢它们的原因之一 但是 对于表格或标题 我想指定应使用衬里数字 CSS 有没有办法做到这一点 为了安抚搜索 旧式数字 文本数字 非衬里数字 中世纪数字 衬里数字 标题数字 Firefox 4 0有基本
  • 在 Replace() 表达式中添加换行符

    我正在尝试使用回归模型中的相关数据来注释 ggplot 中的图 我已遵循建议在这个帖子中 https stackoverflow com questions 7549694 ggplot2 adding regression line eq
  • 使用实体框架仅从日期时间值获取日期部分

    我只想从数据库 日期时间 值获取日期部分 我正在使用下面的代码 但它正在获取日期和时间部分 using FEntities context new FEntities DateTime date DateTime Now if contex
  • 如何在 iOS 应用程序中获取后台运行的应用程序详细信息?

    我想开发一个应用程序 该应用程序应该监视在我的 I Phone 设备 包括互联网浏览器 上运行了多少应用程序 请分享您对这篇文章的想法 有点像这样 https itunes apple com us app system manager i
  • Richfaces 和 Primefaces 彼此兼容吗?

    我现在使用 Primefaces 2 1 我尝试将 Richfaces 3 3 3 集成到我的应用程序中以便使用