如何将选定的下拉列表值从xhtml页面传递给jsf bean?

时间:2013-07-04 09:01:34

标签: java jsf java-ee javabeans

我的wep页面中有一个下拉列表,现在是:

 <h:form>
        <h:panelGrid columns="2">
            <h:outputText value="Açılacak hesabın para birimi:"></h:outputText>
            <h:selectOneMenu value="currency" >
                <f:selectItem itemValue="choose" itemLabel="Seçiniz..." />
                <f:selectItem itemValue="tl" itemLabel="Türk Lirası(TL)" />
                <f:selectItem itemValue="usd" itemLabel="Amerikan Doları(USD)" />
                <f:selectItem itemValue="euro" itemLabel="Euro" />
            </h:selectOneMenu>

            <h:outputText value="Açılacak hesabın cinsi:"></h:outputText>

            <h:selectOneMenu value="vade" >
                <f:selectItem itemValue="choose" itemLabel="Seçiniz..." />
                <f:selectItem itemValue="vadesiz" itemLabel="Vadesiz mevduat hesabı" />
                <f:selectItem itemValue="vadeli" itemLabel="Vadeli Mevduat Hesabı" />
            </h:selectOneMenu>
            <h:commandButton value="Onayla" action="#{events.createAccount}" ></h:commandButton>
        </h:panelGrid>           
    </h:form>

然后单击按钮,我将转到Events.java bean并在那里处理一些信息。但我需要函数createAccount()中的这些下拉列表的值。这是我的Events bean

@Named(value = "events")
@Dependent
public class Events {

/**
 * Creates a new instance of Events
 */
public Events() {
}

public void createAccount(){

}
}

我该怎么做?

由于

1 个答案:

答案 0 :(得分:1)

这是一个非常基本的JSF点,在您的selectOneMenu组件中,在托管bean中定义一个值:

<h:selectOneMenu value="#{events.currency}" >
      <f:selectItem itemValue="choose" itemLabel="Seçiniz..." />
      <f:selectItem itemValue="tl" itemLabel="Türk Lirası(TL)" />
      <f:selectItem itemValue="usd" itemLabel="Amerikan Doları(USD)" />
      <f:selectItem itemValue="euro" itemLabel="Euro" />
</h:selectOneMenu>

现在在托管bean中,您只需定义属性currency

private String currency;

public String getCurrency() {
    return currency;
}
public void setCurrency(String currency) {
    this.currency = currency;
}

现在,在Events托管bean的方法createAccount中,您只需使用已定义的currency值。
有关更多示例和教程,请参阅此处:https://stackoverflow.com/tags/jsf/info