真正的问题是:
是否有方法在初始页面加载时清除所有组件的某些属性?
背景信息:
在我的应用程序中,我有一个JSF 2.0前端层,它与服务层(服务层由注入到托管bean中的SpringBean组成)。
服务层进行自己的验证,我在前端层使用自己的验证程序类进行相同的验证,以设法避免代码重复。这些验证器类不是JSF验证器,它们只是pojos。
我只对一个操作进行验证,所以在action方法中,我执行验证,并且只有当它有效时,我才调用到服务层。
当我进行验证时,我使用反射在uicomponents上设置了styleclass和title(因此,如果uicomponent有setStyleClass(:string)或setTitle(:string)方法,那么我使用它们)。
这很好地工作,在一个验证错误中,我看到一个样式很好的文本框,如果我将鼠标悬停在它上面,它会弹出一个包含错误消息的弹出窗口。但是,由于该组件绑定到会话范围的托管bean,因此这些属性似乎仍然存在。所以,如果我离开并返回到同一个页面,样式类和标题仍然处于错误状态。
是否有一种方法可以清除每次初始页面加载时的样式类和标题属性?
谢谢,
詹姆斯
另外,我正在使用action方法进行验证,因为我以前在使用JSF1.2和它的验证方法时遇到过一些问题,但是我记不起为什么……这就是为什么我要使用action方法进行验证。