让<p:dialog> <p:tabview>长时间打开会导致java.lang.IllegalArgumentException:java.util.EventObject中的null source。<init> </init> </p:tabview> </p:dialog >

时间:2014-07-16 06:00:22

标签: jsf-2 primefaces

我正在使用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个标签,也会出现问题。

这是如何引起的?如何解决?

0 个答案:

没有答案