Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/336.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java f:selectItem中的枚举:如何将所选值传递给bean?_Java_Jsf - Fatal编程技术网

Java f:selectItem中的枚举:如何将所选值传递给bean?

Java f:selectItem中的枚举:如何将所选值传递给bean?,java,jsf,Java,Jsf,我想使用带有Enum值的selectOneMenu下拉菜单。我可以很好地显示这些值,但无法将所选值传递回bean 枚举 Bean1 Bean2 xhtml 在提交时,我在submit()函数中得到一个由NullPointerException引起的500。问题是bean.color没有用所选值初始化。 我确信这是一些基本的东西,但是…bean.color应该在中更改为{bean.color} 您能试一试吗?另外,我注意到属性var和itemValue之间没有空格,谢谢,缺少空格是本文中的格式

我想使用带有
Enum
值的
selectOneMenu
下拉菜单。我可以很好地显示这些值,但无法将所选值传递回bean

枚举 Bean1 Bean2 xhtml

在提交时,我在
submit()
函数中得到一个由
NullPointerException
引起的500。问题是
bean.color
没有用所选值初始化。
我确信这是一些基本的东西,但是…

bean.color
应该在
中更改为
{bean.color}


您能试一试吗?

另外,我注意到属性var和itemValue之间没有空格,谢谢,缺少空格是本文中的格式错误,请更正。至于它从来没有起作用:根据这个,它应该起作用,不?啊,明白了。道歉,因为这没用。一件小事,如果它有帮助的话
bean.color
需要在
OMG中更改为
{bean.color}
。说到基础…哈哈@rookie_senior-我也经常遇到这种情况。小失误。很高兴这有帮助。祝你好运:)
public enum Color {
    RED("Red"), BLUE("Blue"), GREEN("Green");
    private String label;
    private Color(String label) {
        this.label = label;
    }
    public String getLabel() {
        return label;
    }
}
@ManagedBean
@ApplicationScoped
    public class Data {
    public Color[] getColors() {
        return Color.values();
    }
}
@ManagedBean(name="bean")
@SessionScoped
    public class TestBean {
    private Color color;

    public Color getColor() {
        return color;
    }
    public void setColor(Color color) {
        this.color = color;
    }   
    public void submit() {
        System.out.println(color.getLabel());
    }
}
<h:body>
    <h:form>
        <h:selectOneMenu value="bean.color">
            <f:selectItems value="#{data.colors}" var="color" itemValue="#{color}" itemLabel="#{color.label}"/> 
        </h:selectOneMenu>                             
        <h:commandButton value="Submit" action="#{bean.submit}" />
    </h:form>
    <h:outputText value="#{bean.color}" />
</h:body>