Jsf 2 JSF/Primefaces 3.4.1/SelectOneMenu/Pojo/预选Pojo值不起作用
此预选的自动完成Bean.selectedPlayer1不起作用 这是从primefaces网站showcase中提取的示例: 在bean中,我放了以下几行:Jsf 2 JSF/Primefaces 3.4.1/SelectOneMenu/Pojo/预选Pojo值不起作用,jsf-2,primefaces,Jsf 2,Primefaces,此预选的自动完成Bean.selectedPlayer1不起作用 这是从primefaces网站showcase中提取的示例: 在bean中,我放了以下几行: private Player selectedPlayer1; private List players; /* AutoCompleteBean - constructor */ public AutoCompleteBean() { players = new ArrayList<Player>(); playe
private Player selectedPlayer1;
private List players;
/* AutoCompleteBean - constructor */
public AutoCompleteBean() {
players = new ArrayList<Player>();
players.add(new Player("Messi", 10, "messi.jpg", "CF"));
players.add(new Player("Bojan", 9, "bojan.jpg", "CF"));
selectedPlayer1 = players.get(1);
}
变量autoCompleteBean.selectedPlayer1,
包含在打开jsp之前指定的值。
但是,这不是预选的。仅显示始终选定的第一个元素
在arraylist中。为什么
只有我需要p:SelectOne菜单,在列表中预选de值
提前谢谢 事实上,您可以预先选择一个值,或者换句话说,默认情况下通过以下操作选择一个值:
<p:selectOneMenu value="#{autoCompleteBean.selectedPlayer1}" effect="fade" converter="player">
<f:selectItem itemLabel="autoCompleteBean.selectedPlayer1.name" itemValue="autoCompleteBean.selectedPlayer1" />
<f:selectItems value="#{autoCompleteBean.players}" var="player" itemLabel="#{player.name}" itemValue="#{player}"/>
</p:selectOneMenu>
但是从这个数组中删除预选选项,你的玩家类是否有hashCode和equals函数 如果缺少它们,primefaces就无法在它们之间进行区分 类似问题:
你能准确地写出你写的JSF代码吗?只有这样,我们才能真正提供帮助。嗨,jedrus07,我把我的问题说得更清楚了。请阅读,我希望你的反馈。谢谢转换器工作正常吗?日志中没有错误?是的,转换器正常。我正在调试,没有发现错误。谢谢!!我这样做了,但现在的问题是验证器。提交此页面时,将显示错误消息。我认为转换器没有在列表中找到对象。
<p:selectOneMenu value="#{autoCompleteBean.selectedPlayer1}" effect="fade" converter="player">
<f:selectItem itemLabel="autoCompleteBean.selectedPlayer1.name" itemValue="autoCompleteBean.selectedPlayer1" />
<f:selectItems value="#{autoCompleteBean.players}" var="player" itemLabel="#{player.name}" itemValue="#{player}"/>
</p:selectOneMenu>
itemValue="#{player}"