我正在使用Glassfish开源版3.1.2.2(我认为版本2.1.6)附带的默认Mojarra。我有<p:dialog>
<p:tabView>
,每个标签中都有一些按钮/链接。当我打开对话框并通过按钮/链接进行一些ajax操作时,一切正常。如果我打开对话框并保留一段时间(比如说10分钟),那么我会得到以下异常:
java.lang.IllegalArgumentException: null source
at java.util.EventObject.<init>(EventObject.java:38)
at javax.faces.event.SystemEvent.<init>(SystemEvent.java:67)
at javax.faces.event.ComponentSystemEvent.<init>(ComponentSystemEvent.java:69)
我试过了OmniFaces restorable view。异常不再发生,但对话框关闭且没有任何反应,bean中的监听器不会被触发。
在我的web.xml
中,我指定了一个非常高的会话超时(以小时为单位)。我认为由于会话超时,视图不会过期。 number of logical views是默认值(我猜是15)。但是我们没有在同一个会话中打开15个浏览器选项卡。即使有1-2个标签,也会出现问题。
这是如何引起的?如何解决?