2

我在尝试使用框架 JSF 2.1、Seam 2.3、Primefaces 3.4.1、Omnifaces 1.3 正确处理 ViewexpiredException 时遇到了可怕的问题。

在这里你可以看到我在 primefaces 论坛上发布的问题的完整解释:http: //forum.primefaces.org/viewtopic.php? f=3&t=28215

在这篇文章中,我被告知要尝试全脸(我现在正在尝试这样做)。所以我在我的项目中配置它(不确定是否正确)。

我将此添加到我的 faces-config.xml 中:

<application>
<...>
<resource-handler>org.omnifaces.resourcehandler.CombinedResourceHandler</resource-handler> 
<...>
</application>


<factory>
<render-kit-factory>org.omnifaces.renderkit.Html5RenderKitFactory</render-kit-factory>
<exception-handler-factory>org.omnifaces.exceptionhandler.FullAjaxExceptionHandlerFactory</exception-handler-factory>
</factory>

一切似乎都正常,FullAjaxExceptionHandlerFactory 似乎试图处理异常并尝试重定向到登录页面(请参阅我在 primefaces 论坛上的最后一篇文章)但应用程序被冻结并且没有真正发生,我不太确定我是否做了错误什么的。

我已经尝试了我在互联网上找到的几乎所有解决方案,但似乎对我不起作用,当某些东西似乎起作用时,我在登录后得到这个页面(我被重定向导致会话退出):http://img831.imageshack。我们/img831/7459/pic4w.png

提前致谢

4

1 回答 1

0

非常感谢您的回复。我终于解决了。

我不太清楚为什么,但是 pages.xml 文件的标签“pages”中的这个属性 login-view-id="/login.xhtml" 避免了这段代码的“进程”:

<exception class="org.jboss.seam.security.NotLoggedInException">
  <redirect view-id="/login.xhtml">
     <message>Debe loguearse para continuar</message>
  </redirect>

在我删除 login-view-id 属性后,NotLoggedInException 开始被处理,但是我登录后仍然遇到同样的问题,所以我添加并最终解决了问题,所以完整的标签结束如下:

<exception class="org.jboss.seam.security.NotLoggedInException">
   <end-conversation/>
  <redirect view-id="/login.xhtml">
     <message>Debe loguearse para continuar</message>
  </redirect>

非常感谢你!

于 2013-02-01T15:07:37.897 回答