这是我的xhtml页面:
<a:region>
<h:form>
<a:poll id="poll" interval="#{pollBean.pollInterval}"
enabled="#{pollBean.pollEnabled}"
timeout="#{pollBean.timeout}" reRender="poll,messagesList" />
</h:form>
</a:region>
<h:form>
<rich:dataTable id="messagesList" value="#{pollBean.messages}" var="message">
<h:outputText value="#{message.content}" />
</rich:dataTable>
</h:form>
在轮询完成后,不会重新呈现rich:dataTable组件。在我使用ui之后:重复一次,它工作正常。所以有人可以帮我解释一下吗?感谢。
我的应用程序基于Seam 2.2.1.CR2和richfaces 3.3.3构建,并部署在JBoss 6.0.0上。
这是我简单的PollBean.java:
@Name("pollBean")
@Scope(ScopeType.SESSION)
@Restrict("#{identity.loggedIn}")
public class PollBean implements Serializable {
@In
private EntityManager entityManager;
private boolean pollEnabled = true;
private int pollInterval = 3000;
private int timeout = 3000;
/**
* Default constructor.
*/
public PollBean() {
}
// getters and setters omitted
/**
* @return Returns a list of messages.
*/
public List<Message> getMessages() {
@SuppressWarnings("unchecked")
List<Message> messages = this.entityManager.createQuery(
"select message from Message message").getResultList();
return messages;
}
}
答案 0 :(得分:1)
凯文,
本地测试和代码似乎工作正常所以我建议打印所有pollBean
属性并进行调试。