JSF将bean的属性与bean的方法混淆

时间:2014-01-18 14:22:10

标签: java jsf

我正在使用HIBERNATE-SPRING和JSF开发应用程序。 当我在我的jsf页面上放一个commandButton时,它没有重定向到另一个jsf页面,我不知道为什么.. 举个例子 :  来自我的JSF页面:

<f:view>
    <h:form id="mainForm">
        <h:panelGrid columns="1">
            <rich:scrollableDataTable id="clientTable" 
                value="#{clientBean.clients_list}" var="client" >
            <!-- The Scrolable data informations... -->
            </rich:scrollableDataTable>
            <h:commandButton value="Detail" 
                action="#{clientBean.ViewDetail}"/>
        </h:panelGrid>
    </h:form>
</f:view>

我在:ClientBean中创建了一个ViewDetail方法,如下所示:

@SuppressWarnings("serial")
@Scope("session")
@Component("clientBean")
public class ClientBean implements Serializable {
    //attributs
    public String ViewDetail() {
        //some code 
        return "detail";
    }
}

在faces config中,我得到了:

<navigation-rule>
    <from-view-id>*</from-view-id>
    <navigation-case>
        <from-outcome>detail</from-outcome> 
        <to-view-id>/clients_details.jsp</to-view-id>
    </navigation-case>
</navigation-rule>

但是,当我运行它,并且我使用“详细信息”按钮时,这里是我没有得到任何东西,没有错误,没有警告,没有...只是保持在同一页面上,似乎加载了一些东西,但根本没有重定向(它甚至不会进入ClientBean类..)

所以...... 在网上看到无处不在之后,我试过了 (在jsf页面上)
<h:commandButton value="Detail"> <f:param name="action" value ="#{clientBean.ViewDetail}"/> </h:commandButton> 这就是我跑的时候得到的:

:/ clients_liste.jsp(67,0)'#{clientBean.ViewDetail}'在com.last.web.ClientBean类型中找不到属性'ViewDetail'

尽管如此,我不会在ClientBean中进行任何更改,这就像他将属性与方法混淆一样..

如果任何人可以帮助请一个或另一个问题:) .. 谢谢:)

0 个答案:

没有答案