我是JSF的新手。我有3个级联的SelectOneMenu,即国家,州和城市。功能性是当选择国家/地区时,如果填充了应对状态,则选择状态时填充城市。 我正在使用a4j:support标签来实现它。我的托管bean在请求范围内,是Spring托管bean。 我为CountriesChanged(),StatesChanged()和CitiesChanged()编写了ActionListener。
在我的应用程序中,当选择国家/地区时,会触发操作事件并填充状态。 但是,当一个更改状态时,它会抛出“验证错误:值无效”
如果有人指导我正确的方向,那会很有帮助。
答案 0 :(得分:1)
您需要在表单提交请求期间准备与表单显示请求期间完全相同的状态列表。 JSF将根据可用项列表重新验证提交的值。如果是请求范围的bean,则必须在bean的(post)构造函数中进行准备。另一种方法是将bean放在新的JSF 2.0视图范围中,这样每当您针对同一视图提交表单时,都不会重新创建bean。