Warning: file_get_contents(/data/phpspider/zhask/data//catemap/7/jsf/5.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
firefox 11和richfaces 3.1.5.GA/jsf 1.1.11 html注入_Firefox_Jsf_Richfaces_Ajax4jsf_Myfaces - Fatal编程技术网

firefox 11和richfaces 3.1.5.GA/jsf 1.1.11 html注入

firefox 11和richfaces 3.1.5.GA/jsf 1.1.11 html注入,firefox,jsf,richfaces,ajax4jsf,myfaces,Firefox,Jsf,Richfaces,Ajax4jsf,Myfaces,因此,我们有一个jsf/myfaces+rf应用程序,可以很好地与FF 10配合使用。但是FF 11本周发布了,我们看到了a4j标签的html注入问题。如果我们有一个简单的facelet页面,并且只添加一个a4j组件,firefox 11将呈现两个头部和身体标签(一对头部和身体标签是空的,并且它们以某种随机顺序呈现,有时空的身体标签在页面内容之后,有时在之前)。 这就在客户端抛开了很多复杂的css和jquery逻辑(我们有一个css/js开发人员,他正在使用一些黑客的方法来解决这个问题,但这并不

因此,我们有一个jsf/myfaces+rf应用程序,可以很好地与FF 10配合使用。但是FF 11本周发布了,我们看到了a4j标签的html注入问题。如果我们有一个简单的facelet页面,并且只添加一个a4j组件,firefox 11将呈现两个头部和身体标签(一对头部和身体标签是空的,并且它们以某种随机顺序呈现,有时空的身体标签在页面内容之后,有时在之前)。
这就在客户端抛开了很多复杂的css和jquery逻辑(我们有一个css/js开发人员,他正在使用一些黑客的方法来解决这个问题,但这并不理想)。是否有其他人看到了这一点或有任何解决办法的想法,以便a4j标签不会自动注入额外的头部/身体标签


我听说jsf2/richfaces 4没有这个问题,但是升级需要花费大量的时间和精力,所以我想看看是否还有其他的选择(我想也是为了证实,如果我们最终必须升级的话,rf4在FF 11中确实没有这个问题)。谢谢。

似乎是一个FF错误:Ajax响应还可以,但是在html注入之后,a4j:mediaOutput的资源键被修改了(看起来像是URL编码的)。因此,资源查找失败。 按F5键后,将请求整个页面,并且URL有效。
我想说的是:我认为您的代码还可以,我们都必须等待FF12。

似乎FF开始支持“outerHtml”DOM属性,所以“A4J.AJAX.\u scriptEvaluated”代码是使用回退IE目标代码插入的,而不是针对现代浏览器的代码

Jean Blanchard解释了如何修复它

要修复它,您必须从richfaces-impl.jar更新文件/org/ajax4jsf/javascript/scripts/AJAX.js。 不幸的是,我没有访问该库的权限,因此我正在使用以下难看的解决方法:

--[如果--
//  1) {
对于(变量i=0;i
!-- ![完]--

从FF11开始,我们也遇到了问题,在尝试了很多东西之后,这个线程解决了我们所有的问题:


我会向RichFaces的家伙们报告。有人能推荐一下:/org/ajax4jsf/javascript/scripts/AJAX.js所需的补丁吗??
      <!--[if !IE]> -->
    <script type="text/javascript">
    // <![CDATA[
        function fixA4J() {
            var bodies = document.getElementsByTagName("body");
            if (bodies.length > 1) {
               for (var i = 0; i < bodies.length; i++) {
                    if (bodies[i].firstChild == null) {
                        bodies[i].parentNode.removeChild(bodies[i])
                        break;
                    }
                }
                var heads = document.getElementsByTagName("head");
                for (var i = 0; i < heads.length; i++) {
                    if (heads[i].children.length == 1) {
                        var s = heads[i].firstChild;
                        heads[i].parentNode.removeChild(heads[i])
                        document.head.appendChild(s);
                        break;
                    }
                }
        }
        window.setTimeout(fixA4J, 100);
    // ]]>
    </script>
    &lt;!-- &lt;![endif]--&gt;