2013-07-17 112 views
0

有誰知道如何在.jsf頁面顯示流媒體推文。我想直接在我的頁面上顯示用戶狀態。我創建的命名備份豆分享Tweet:顯示流媒體推文?

@Named(value = "tweet") 
@Dependent 
public class Tweet { 
    private String user; 
    private String status; 
    private String date; 

然後設置數據,當談到在TweetBean:

@Named(value = "tweetBean") 
@Dependent 
public class TweetBean { 
... 
public void open() { 
    StatusListener listener = new StatusListener() { 
     @Override 
     public void onStatus(Status status) { 
      Tweet tweet = new Tweet(); 
      tweet.setUser("@" + status.getUser().getName()); 
      tweet.setStatust(status.getText()); 
      tweet.setDate(String.valueOf(created.format(status.getCreatedAt()))); 
     } 

我遇到的facelet命名tweets.xhtml但新流鳴叫不會顯示。爲什麼?我應該使用f:ajax render =「@form」還是別的?

<h:body> 
    <h:form > 
     <div> 
      User: #{tweet.user}<br/> 
      Status: #{tweet.status} <br/> 
      Date: #{tweet.date} <br/> 
     </div> 
    </h:form> 
</h:body> 
+0

任何??當價值改變如何更新屏幕上? – Orbita

回答

0

我已經發現使用PrimeFaces P上的溶液:像這樣輪詢組件:

<h:form id="form"> 
<p:dataTable id="statuses" 
      value="#{tweetBean.statusesLinkedList}" 
      var="st" 
      sortMode="multiple" 
      rows="5" 
      paginator="true" > 
    <p:column headerText="Message:"> 
     <h:outputText value="#{st.status}"/> 
    </p:column> 
    <p:column headerText="Date:" sortBy="#{st.date}"> 
     <h:outputText value="#{st.date}"/> 
    </p:column> 
    <p:column headerText="User:"> 
     <h:outputText value="#{st.user}"/> 
    </p:column> 

</p:dataTable> 
<p:commandButton type="submit" value="Stop" 
       actionListener="#{tweetBean.close()}" 
       ajax="false" action="index?facesredirect=true"> 
</p:commandButton> 
<p:poll interval="3" update="statuses" />