当我尝试在启用了移动渲染工具包的网站中渲染p:progressBar
时,该组件无法渲染(我看到了我自己的css样式的组件)。
我只是在浏览器的错误控制台中得到两个404:
404 (Not Found) (undefined.css.xhtml, line 0) $HOSTADRESS$/javax.faces.resource/undefined/undefined.css.xhtml?ln=primefaces&v=5.1
404 (Not Found) (undefined.js.xhtml, line 0) $HOSTADRESS$/javax.faces.resource/undefined/undefined.js.xhtml?ln=primefaces&v=5.1
我确定这是一个错误,我将打开一个问题(Issue 7717)。我只是想显示一个静态进度条,这个用例有一个简单的解决方法吗?顺便说一句。我正在使用PrimeFaces 5.1
这是一个SSCCE:
<!DOCTYPE html>
<html xmlns="http://www.w3.org/1999/xhtml"
xmlns:p="http://primefaces.org/ui"
xmlns:h="http://java.sun.com/jsf/html"
xmlns:f="http://java.sun.com/jsf/core"
xmlns:pm="http://primefaces.org/mobile">
<h:head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />
</h:head>
<f:view locale="de_DE" encoding="UTF-8" contentType="text/html" renderKitId="PRIMEFACES_MOBILE">
<h:body>
<p:commandButton value="Renders"/>
<!--doesn't render-->
<p:progressBar value="#{70}" labelTemplate="#{70}"/>
</h:body>
</f:view>
</html>
答案 0 :(得分:0)
今天我再次解决了这个老问题,并在this answer找到了解决方法 所以我添加了
<h:outputScript target="body">
var originalPrimeFacesCw = PrimeFaces.cw;
PrimeFaces.cw = function(name, id, options, resource) {
resource = resource || name.toLowerCase();
originalPrimeFacesCw.apply(this, [name, id, options, resource]);
};
</h:outputScript>
到我的移动模板并通过css设置进度条的背景颜色:
.ui-progressbar .ui-widget-header {
background-color: SOMECOLOR;
}
首先,我使用<o:onloadScript>
加载了变通办法脚本,但是如果您在页面上执行了某些操作,则会获得每个ajax请求,从而产生RangeError
。
我仍然希望能够正式修复。