2017-03-15 101 views
0

在JSF页面上有大约5个输入字段(某些文本框,下拉列表,文本区域,广播等)和提交按钮。 单击该按钮时,将根据输入的值验证所有输入字段。窗体某些字段上的验证错误,清除JSF表单的所有字段

我们正面临着页面的问题。 当任何输入字段出现验证错误(例如,您为电话号码文本框输入字母)时,除了清除错误的字段(电话文本框)之外,还有一些其他字段(例如,名字字段)那些填充了正确值并且没有任何验证错误的人也被清除了。 应用程序部署在具有2个相同服务器的WebSphere集群环境中。 问题的一个奇怪的部分是它不会一直发生。看起来,当应用程序从一台服务器提供时,问题就会发生,但是当它来自另一台服务器时,它不会。 另外,注意到这个问题不会在本地发生,也就是当应用程序从IBM RSA IDE的本地独立WebSphere服务器上运行时。

Please see the screenshot of the problem

JSF 2.2钻嘴鱼科 的WebSphere ND版本8.5.5.9 IBMRational®软件架构师WebSphere软件:版本:8.5

任何人都可以请帮我找出如何解决这个问题。谢谢

回答

0

此问题可能与您的集群环境和序列化有关。作为第一步,检查是否使用客户端状态与JSF节能解决此问题:

<context-param> 
    <param-name>javax.faces.STATE_SAVING_METHOD</param-name> 
    <param-value>client</param-value> 
</context-param> 

有关于JSF和集群here额外的特定于WebSphere的信息。您需要确保javax.faces.SERIALIZE_SERVER_STATE设置为true,并且您没有any serialization issues