gpt4 book ai didi

java - SelectItem.value 仅以字符串形式返回对象引用

转载 作者:太空宇宙 更新时间:2023-11-04 09:39:35 25 4
gpt4 key购买 nike

目标是正确获取 SelectItem.value 并将其设置在我的支持 bean 中。问题是 itemValue 似乎只返回对象引用。我只是引用了这个https://www.primefaces.org/showcase/ui/input/oneMenu.xhtml

如何实际获取所选项目的对象(即 itemValue)?

尝试将 setter 作为我的 itemValue 的确切对象,但最终将 null 设置为值

尝试将 setter 作为一般对象,结果将值设置为 String 的对象引用

<p:selectOneMenu id="car" value="#{selectOneMenuView.car}">
<f:selectItem itemLabel="Select One" itemValue="" />
<f:selectItems value="#{selectOneMenuView.cars}" />
</p:selectOneMenu>

支持bean


Car car = new Car(brand, model);
SelectItemGroup g1 = new SelectItemGroup("German Cars");
g1.setSelectItems(new SelectItem[] {new SelectItem(car, "BMW")});

Car car1 = new Car(brand1, model1);
SelectItemGroup g2 = new SelectItemGroup("American Cars");
g2.setSelectItems(new SelectItem[] {new SelectItem(car1, "Chrysler")});

cars = new ArrayList<SelectItem>();
cars.add(g1);
cars.add(g2);

当选择一个项目时,setCar 被调用,但它似乎没有传递我想要的值。

//value is null
public void setCar(Car car) {this.car = car;}
//value is the object reference
public void setCar(Object car) {this.car = car;}

我尝试显式放置 var 和 itemValue 属性,但结果仍然相同。

我似乎找不到这方面的好的文档。我的目标可能实现吗?我需要一些帮助。谢谢!

最佳答案

这里你有一个汽车构造函数,它接受品牌和型号两个参数,但在你的 setter 中你只需要一个汽车对象。我认为你应该有这样的代码:

public void setCar(brand b,model m){
this.brand=b;
this.model=m;
}

祝你好运!

关于java - SelectItem.value 仅以字符串形式返回对象引用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/56123961/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com