在我正在处理的某项计划中,在特定事件发生后的某个时刻,#34; work1Complete"我需要更新特定的页面组件。
为了做到这一点,我只找到了<p:remoteCommand>
标签。我这样使用它:
<p:remoteCommand id="updater" name="updater" update="updatedList" action="#{getUpdates.getUpdates()}" actionListener="#{getUpdates.updateSearchParam}" />
然后我使用:
调用它存储在窗口对象中的函数window.updater({
"updateString" : updateString
});
没有我搜索,我唯一的信息就是:
警告:JSF1064:无法找到或提供资源,/ []。xhtml。
经过一些关于执行的研究,我能够确定getUpdates()以某种方式被执行了13次并且updateSearchParam()被执行了2次。
getUpdates()接收void并返回Iterable updateSearchParam()接收void并返回void updatedList永远不会更新 使用浏览器控制台,我在服务器的urlencoded请求中看不到我给它的信息(上面的js对象)。
我使用的是primefaces 4.0(及其所有依赖项)而没有其他库。
答案 0 :(得分:0)
你能更清楚你的问题吗?
如果你的意思是你需要在触发某个事件后执行一个动作,你可以在你的支持bean中有一个布尔方法,当事件完成时设置为true,然后根据你的布尔结果渲染组件。
例如:
public class MyBean
{
public boolean isTrue()
{
if(abc.getVal()
{
return true;
}
return false;
}
}
XHTML
<h:outputLabel styleClass="formLabel" value="abc" rendered="#{myBean.true}" />
答案 1 :(得分:0)
更改您的web.xml文件,如下面的代码
的web.xml
<context-param>
<param-name>javax.faces.PROJECT_STAGE</param-name>
<param-value>Production</param-value></context-param>