【问题标题】:Richfaces and myfaces compatibility issueRichfaces 和 myfaces 兼容性问题
【发布时间】:2012-08-31 12:11:20
【问题描述】:

我无法让 myFaces(2.1.8 但与 2.0 的概率相同)在 Tomee 1.1 容器上与 RichFaces 4.2.2 一起工作。 尝试谷歌搜索,但没有发现任何相关内容。

一旦将richfaces标签添加到页面,myFace JavaScript库链接通常包含在页面的第一种形式中:

<script type="text/javascript" src="/pilot/javax.faces.resource/oamSubmit.js.xhtml?ln=org.apache.myfaces">

从呈现的 HTML 中消失。因此,所有“h:commandLink”链接在浏览器中都会失败,并出现 javascript 错误“myFaces not defined”。

这是一个示例

<?xml version="1.0" encoding="UTF-8"?>
<html xmlns="http://www.w3.org/1999/xhtml"
xmlns:h="http://java.sun.com/jsf/html"
xmlns:rich="http://richfaces.org/rich">

<h:head></h:head>
<h:body>

<h:form>
<h:commandLink value="Index" action="welcome" immediate="true" />
<rich:popupPanel >
</rich:popupPanel>
</h:form>

</h:body>
</html>

【问题讨论】:

  • 这个bug出现在最新的firefox下,IE以某种方式缓存了myfaces javascript,所以如果你之前浏览过的页面没有丰富的组件,它可能在IE下工作。硬编码 恢复 myfaces 功能(链接等)

标签: richfaces openjpa myfaces


【解决方案1】:

显然 Myfaces 是在 jsf.js 中定义的,并且存在一些问题。

无论如何在 web.xml 中添加以下代码可以解决问题

<context-param>
    <param-name>org.apache.myfaces.USE_MULTIPLE_JS_FILES_FOR_JSF_UNCOMPRESSED_JS</param-name>
    <param-value>true</param-value>
</context-param>

【讨论】:

    猜你喜欢
    • 2014-02-01
    • 2013-12-11
    • 2013-01-25
    • 2011-03-07
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多