这个测试用例是假的。在
ViewExpiredException通常恢复视图(因为它缺少在会议)期间,未呈现响应,也没有实例化的bean时只被扔出。在您的情况下,在实例化bean期间抛出此异常,并且将此异常包装在
ServletException。
在 真正
ViewExpiredException当您在HTTP会话过期发送一个HTTP
POST请求到服务器通常只抛出。因此,基本上有两种方法可以可靠地重现此内容:
h:form
在网络浏览器中以POST形式打开JSF页面(默认情况下已为POST),关闭服务器并清理其工作目录(这很重要,因为大多数服务器在关闭时会将打开的会话序列化为磁盘,并在启动时反序列化它们),然后重新启动服务器并提交已经打开的表单。AViewExpiredException
将被抛出。将
<session-timeout>
in 设置web.xml
为1
分钟,并在使用POST表单打开JSF页面后的1分钟内提交表单。这也将引发ViewExpiredException
。



