2013-06-01 67 views
1

我有一個視圖和一個bean,這是我的問題嗎?我嘗試製作一些jsf導航?並添加返回導航鏈接的方法?但是當我點擊按鈕發送請求但方法從未調用。我想我犯了很簡單的錯誤,但不明白哪裏請幫助我。JSF按鈕在託管bean中不調用方法

這是我的看法代碼:

<?xml version="1.0" encoding="UTF-8"?> 
<html xmlns="http://www.w3.org/1999/xhtml" 
     xmlns:h="http://java.sun.com/jsf/html" 
     xmlns:f="http://java.sun.com/jsf/core" 
     xmlns:p="http://primefaces.org/ui" 
     xmlns:ui="http://java.sun.com/jsf/facelets"> 

<ui:composition template="include/template/Layout.xhtml"> 
    <ui:define name="body"> 
     <h:outputText value="Test text"/> 
     <h:outputText value="#{navigationBean.test}"/> 
     <div/> 
     <p:commandLink value="About Page" action="#{navigationBean.goToAbout}"/> 
    </ui:define> 
</ui:composition> 

</html> 

據我們我的豆代碼:

@ManagedBean(name = "navigationBean") 
@SessionScoped 
public class NavigationBean implements Serializable { 

    public String goToAbout(){ 
     return "About?faces-redirect=true"; 
    } 

    public String getTest(){ 
     return "test"; 
    } 

} 

這是我的輸出頁面:

Test texttest 
About Page 

回答

5

我覺得這裏的錯誤是如您所說簡單,您沒有在頁面中定義表單,請嘗試:

<h:form> 
    <h:outputText value="Test text"/> 
    <h:outputText value="#{navigationBean.test}"/> 
    <div/> 
    <p:commandLink value="About Page" action="#{navigationBean.goToAbout}"/> 
</h:form> 
+0

這就是正確的答案,謝謝。 – Andrew