1

我在 JSF 页面上有两个相关的下拉菜单,它们工作正常。我在第一个下拉列表中使用 valueChangeListener 填充支持第二个下拉列表的列表。

但是,当我尝试提交表单时,JSF 验证失败。从测试中我认为问题在于当页面加载时我的依赖下拉列表为空,然后我在第一个下拉列表进行选择后填充它。但是,当页面加载时,依赖列表中的所有值都不在列表中,因此验证失败。我已经通过使用构造函数在页面加载时设置包含所有可能值的列表来确认这一点,这使我的问题消失了,但这不是一个可能的解决方案,因为加载所有值会破坏我的页面的性能.

有什么想法可以让它工作吗?

问候,凯文。

4

1 回答 1

2

这正是视图范围 bean 的用例。在这种情况下使用请求范围的 bean 违背了 JSF 的原则(可能,但很痛苦 - 就像使用刺猬作为沐浴海绵一样)。

如果此类解决方案有任何问题,请告诉我们,应该有办法缓解它们;关键是,您应该使用视图范围并解决您可能遇到的任何问题,而不是试图逃避它。

于 2011-08-19T09:40:16.443 回答