我正在使用JSF 2.0和Primefaces 3.2。
我正在使用Facelets进行模板化,我已经构建了一个3列布局:
左列 - mainContent列 - 右列。每一列都有自己的模板xhtml文件,其中包含ui:composition,我在mainTemplate中插入。
在mainContent列中,我有一个信息按钮(p:commandButton):
<h:form id="mainForm">
<p:commandButton id="infoButton" value="Info" actionListener="#{faceletsAttachment.addInfo}"/>
</h:form>
但我希望信息显示在右栏中,带有
<h:form id="rightColumnForm">
<p:message for="infoButton">
</h:form>
这显然不起作用,因为找不到infoButton。知道如何让这个工作吗?我试过了
<p:message for="mainForm:infoButton">
,但没有雪茄。
我想使用p:消息的原因是我希望消息将自己定位在infoButton所具有的y位置。如果你有另外一种方法可以解决这个问题,我也很感激。
答案 0 :(得分:3)
如果要从服务器端手动添加消息,可以执行以下操作
<p:message id="myInfoButton" for="myInfoButton" />
并将邮件从服务器发送到myInfoButton
,如此
FacesContext.getCurrentInstance.addMessage("myInfoButton ", new FacesMessage("My Message", "Some Text goes here..."));
还要添加:rightColumnForm
ID以更新<p:commandButton id="infoButton"