Javascript 带有primefaces/jsf、chrome和safari的空白页面(是的,我有f:view)

Javascript 带有primefaces/jsf、chrome和safari的空白页面(是的,我有f:view),javascript,google-chrome,jsf,jsf-2,primefaces,Javascript,Google Chrome,Jsf,Jsf 2,Primefaces,我得到了一个带有Primefaces/JSF、Safari和Chrome的空白屏幕 我的代码中包含以下内容-因此它不是被询问1000次的代码: <!DOCTYPE html> <html xmlns="http://www.w3c.org/1999/xhtml" xmlns:f="http://java.sun.com/jsf/core" xmlns:h="http://java.sun.com/jsf/html" xmlns:ui="http://ja

我得到了一个带有Primefaces/JSF、Safari和Chrome的空白屏幕

我的代码中包含以下内容-因此它不是被询问1000次的代码:

<!DOCTYPE html>
<html xmlns="http://www.w3c.org/1999/xhtml"
    xmlns:f="http://java.sun.com/jsf/core"
    xmlns:h="http://java.sun.com/jsf/html"
    xmlns:ui="http://java.sun.com/jsf/facelets"
    xmlns:p="http://primefaces.org/ui">

<f:view contentType="text/html">

<h:head>
...

</p:layout>
</h:form>
</h:body>
</f:view>
</html>
任何关于这是什么以及如何修复它的想法都将不胜感激

所有浏览器报告错误的第7行是:

PrimeFaces.widget.Carousel=PrimeFaces.widget.BaseWidget.extend({init:function(b){this._super(b);this.viewport=this.jq.children(".ui-carousel-viewport");this.header=this.jq.children(".ui-carousel-header"),this.list=this.viewport.children("ul");this.items=this.list.children(".ui-carousel-item");this.prevButton=this.header.children(".ui-carousel-prev-button");this.nextButton=this.header.children(".ui-carousel-next-button");this.pageLinks=this.header.find(".ui-carousel-page-links .ui-carousel-page-link");this.dropdown=this.header.children(".ui-carousel-dropdown");this.state=$(this.jqId+"_first");this.cfg.numVisible=this.cfg.numVisible||3;this.cfg.pageLinks=this.cfg.pageLinks||3;this.cfg.effect=this.cfg.effect||"slide";this.cfg.effectDuration=this.cfg.effectDuration||500;this.cfg.easing=this.cfg.easing||"easeInOutCirc";this.cfg.pageCount=Math.ceil(this.items.length/this.cfg.numVisible);this.cfg.firstVisible=(this.cfg.firstVisible||0)%this.items.length;this.cfg.page=(this.cfg.firstVisible/this.cfg.numVisible)+1;this.animating=false;var c=this.items.filter(":first"),a=c.get(0);this.cfg.itemOuterWidth=c.innerWidth()+parseInt(this.getProperty(a,"margin-Left"))+parseInt(this.getProperty(a,"margin-Right"))+((parseInt(this.getProperty(a,"border-Left-Width"))+parseInt(this.getProperty(a,"border-Right-Width"))));this.cfg.itemOuterHeight=c.innerHeight()+Math.max(parseInt(this.getProperty(a,"margin-Top")),parseInt(this.getProperty(a,"margin-Bottom")))+((parseInt(this.getProperty(a,"border-Top-Width"))+parseInt(this.getProperty(a,"border-Bottom-Width"))));if(this.cfg.vertical){this.viewport.width(this.cfg.itemOuterWidth);this.viewport.height(this.cfg.numVisible*this.cfg.itemOuterHeight)}else{this.viewport.width(this.cfg.numVisible*this.cfg.itemOuterWidth);this.viewport.height(this.cfg.itemOuterHeight)}this.jq.width(this.viewport.outerWidth(true));this.setOffset(this.getItemPosition(this.cfg.firstVisible));this.checkButtons();this.bindEvents();if(this.cfg.autoplayInterval){this.startAutoplay()}},getProperty:function(a,b){return $.browser.msie?a.currentStyle.getAttribute(b.replace(/-/g,"")):document.defaultView.getComputedStyle(a,"").getPropertyValue(b.toLowerCase())},startAutoplay:function(){var a=this;if(this.cfg.autoPlayInterval){setInterval(function(){a.next()},this.cfg.autoPlayInterval)}},bindEvents:function(){var a=this;this.pageLinks.click(function(b){if(!a.animating){a.setPage($(this).index()+1)}b.preventDefault()});PrimeFaces.skinSelect(this.dropdown);this.dropdown.change(function(b){if(!a.animating){a.setPage(parseInt($(this).val()))}});this.prevButton.click(function(b){if(!a.prevButton.hasClass("ui-state-disabled")&&!a.animating){a.prev()}});this.nextButton.click(function(){if(!a.nextButton.hasClass("ui-state-disabled")&&!a.animating){a.next()}})},getPagePosition:function(a){return -((a-1)*(this.cfg.vertical?this.cfg.itemOuterHeight:this.cfg.itemOuterWidth)*this.cfg.numVisible)},getItemPosition:function(a){return -(a*(this.cfg.vertical?this.cfg.itemOuterHeight:this.cfg.itemOuterWidth))},getPosition:function(){return parseInt(this.list.css(this.cfg.vertical?"top":"left"))},setOffset:function(a){this.list.css(this.cfg.vertical?{top:a}:{left:a})},fade:function(b){var a=this;this.list.animate({opacity:0},{duration:this.cfg.effectDuration/2,specialEasing:{opacity:this.cfg.easing},complete:function(){a.setOffset(b);$(this).animate({opacity:1},{duration:a.cfg.effectDuration/2,specialEasing:{opacity:a.cfg.easing},complete:function(){a.animating=false}})}})},slide:function(c){var a=this,b=this.cfg.vertical?{top:c}:{left:c};this.list.animate(b,{duration:this.cfg.effectDuration,easing:this.cfg.easing,complete:function(){a.animating=false}})},next:function(){this.setPage(this.cfg.page+1)},prev:function(){this.setPage(this.cfg.page-1)},setPage:function(a){if(this.cfg.circular){this.cfg.page=a>this.cfg.pageCount?1:a<1?this.cfg.pageCount:a}else{this.cfg.page=a}this.checkButtons();this.state.val((this.cfg.page-1)*this.cfg.numVisible);var b=this.getPagePosition(this.cfg.page);if(this.getPosition()==b){this.animating=false;return}if(this.cfg.effect=="fade"){this.fade(b)}else{this.slide(b)}},checkButtons:function(){this.pageLinks.filter(".ui-icon-radio-on").removeClass("ui-icon-radio-on");this.pageLinks.eq(this.cfg.page-1).addClass("ui-icon-radio-on");this.dropdown.val(this.cfg.page);if(this.cfg.circular){return}if(this.cfg.page==1){this.prevButton.addClass("ui-state-disabled")}else{this.prevButton.removeClass("ui-state-disabled")}if(this.cfg.page>=this.cfg.pageCount){this.nextButton.addClass("ui-state-disabled")}else{this.nextButton.removeClass("ui-state-disabled")}}});
PrimeFaces.widget.Carousel=PrimeFaces.widget.BaseWidget.extend({init:function(b){this.\u super(b);this.viewport=this.jq.children(.ui Carousel viewport”);this.header=this.jq.children(.ui Carousel header”);this.list=this.viewport.children(.ui Carousel项”);this.prevButton=this.header.children.children(“.ui carousel prev button”);this.nextButton=this.header.children(“.ui carousel next button”);this.pageLinks=this.header.find(“.ui carousel page links.ui carousel page link”);this.dropdown=this.header.children(.ui carousel dropdown”);this.state=$(this.jqId+“\u first”);this.cfg.numVisible=this.cfg.numVisible | 3;this.cfg.pageLinks=this.cfg.pageLinks | 3;this.cfg.effect=this.cfg.effectDuration | | 3;this.cfg.pageLinks=this.cfg.pageCount=Math.ceil(this.items.length/this.cfg.numVisible);this.cfg.firstVisible=this.cfg.firstVisible 1240%this.items.length;this.cfg.page=(this.cfg.firstVisible/this.cfg.numVisible)+1;this.animating=false;var c=this.items.filter(“:first”),a=c.get(0);this.cfg.itemOuterWidth=c.innerWidth()+parseInt(this.getProperty(a,“margin Left”)+parseInt(this.getProperty)(a,“margin Right Right Right”)+(parseInt)(this.getProperty)(this.getProperty(a,“border Left-Left-(this.getProperty(a,“右边框宽度”));this.cfg.itemOuterHeight=c.innerHeight()+Math.max(parseInt(this.getProperty(a,“边距顶部”);parseInt(this.getProperty(a,“边距底部”))+(parseInt(this.getProperty(a,“边框顶部宽度”))));if(this.cfg.vertical){this.viewport.Width(this.cfg.itemOuterWidth);this.viewport.height(this.cfg.numVisible*this.cfg.itemOuterWidth)}else{this.viewport.width(this.cfg.numVisible*this.cfg.itemOuterWidth);this.viewport.height(this.viewport.outerWidth(true));this.setOffset(this.getItemPosition(this.cfg.firstVisible));this.checkButtons();this.bindEvents();if(this.cfg.autoplayInterval){this.startAutoplay()}},getProperty:function(a,b){return$.browser.msie?a.currentStyle.getAttribute(b.replace(/-/g,”):document.defaultView.getComputedStyle(a,”).getPropertyValue(b.toLowerCase())},startAutoplay:function(){var a=this(this.cfg.autoplayInterval){,this.cfg.autoPlayInterval)}},bindEvents:function(){var a=this;this.pageLinks.click(函数(b){if(!a.animating){a.setPage($(this.index()+1)}b.preventDefault()});PrimeFaces.skinSelect(this.dropdown);this.dropdown.change(函数(b){if(!a.animating){a.setPage(parseInt($(this.val()))});this.prevButton.click(函数(b){if(!a.prevButton()).hasClass()ui状态禁用“&&!a.animating){a.prev()});this.nextButton.click(函数(){if(!a.nextButton.hasClass(“ui状态禁用”)&!a.animating){a.next()}}),getPagePosition:function(a){return-((a-1)*(this.cfg.vertical?this.cfg.itemOuterWidth:this.cfg.itemWidth)*this.cfg.numVisible)},getItemPosition:function(a){return return*(this.cfg.vertical?this.cfg.itemOuterHeight:this.cfg.itemOuterWidth)),getPosition:function(){return parseInt(this.list.css(this.cfg.vertical?“top”:“left”)},setOffset:function(a){this.list.csf.vertical?{top:a},fade:function(b){var a=this;this.list.list.animate({opacity:0},{duration duration duration this.cfg.effectDuration duration 2,fact:{opacity:this.cfg.easing},complete:function(){a.setOffset(b);$(this).animate({opacity:1},{duration:a.cfg.effectDuration/2,specialleasing:{opacity:a.cfg.easing},complete:function(){a.animating=false}}}}),slide:function(c){var a=this,b=this.cfg.vertical?{top:c}:{left:c};this.list.animate(b),{duration:this.cfg.effectDuration,easing:this.cfg.easing,complete:function(){a.animating=false}}},next:function(){this.setPage(this.cfg.page+1)},prev:function(){this.setPage(this.cfg.page-1)},setPage:function(a){if(this.cfg.circular){this.cfg.page=a>this.cfg.pageCount 1:a=this.cfg.pageCount{this.nextButton.removeClass(“ui状态已禁用”)};
谢谢,
-Dave发现了optimus.prime发布的帖子,这就解决了问题-答案是当您有对话框时,widgetVar应该与id不同-否则safari和chrome不会呈现页面

即坏的:

<p:dialog id="tabbedJoinedD" widgetVar="tabbedJoinedD" ...

Facelets中根本不需要
。这个神话是旧JSP时代的遗留问题。至于JS错误,您是否手动包含任何脚本文件?如果是,哪些脚本文件?如果不是,您是否确定在webapp的运行时类路径中只有一个PrimeFaces JAR文件(因此没有多个不同版本的文件)?只有一罐primefaces-3.5。我有两个commons lang JAR版本(2.4和3.1),但第二个版本是最近的,问题以前就存在过。没有脚本文件。chrome中的TypeError报告在primefaces.js.jsf?ln=primefaces:7(不能调用null的方法'getPropertyValue')和ln primefaces:1上(对象#没有“刷新”方法)。IE 8在同一行中显示错误-在第7行中,“currentStyle”为null或不是对象,第1行作为对象;不支持此属性或方法。根据HTTP监视器下载了哪些JS文件?(Chrome web dev tools中的网络选项卡)和firefix在同一行上有错误(但呈现页面)as-不支持错误:不支持操作。
<p:dialog id="tabbedJoinedD" widgetVar="tabbedJoinedD" ...
<p:dialog id="tabbedJoinedD" widgetVar="tabbedJoinedDV" ...