繁体   English   中英

在 Struts 2 中会话失效后发送注销配置值

[英]Sending configuration value for logout after session invalidate in Struts 2

我有一个 Struts 2 Web 应用程序。

当前,当用户单击注销 URL 时,我们调用注销操作,并在我们调用session.invalidate()的方法中。 如果成功,那么我们调用logout.jsp

logout.jsp我们需要重定向到另一个链接。 此链接目前在 JSP 中硬编码。

测试和生产中的链接是不同的,因此我们在测试和生产中部署时必须对此链接进行更改。 我们有从外部文件获取值的实用程序。 但是由于会话无效,我们无法在会话中设置值并在 JSP 中检索。

最好的方法是什么?

如果您需要会话来执行此操作,您可以在会话失效之前配置结果。

配置结果后,您可以在其中对要重定向的操作或 URL 使用动态参数,不再需要 JSP 来执行重定向。

重定向结果可以在不呈现 JSP 的情况下做到这一点。

该示例取自Struts 2 中使用未知数量的参数重定向到另一个操作的答案。

您还可以保存查询字符串而不是参数映射。

 String params = request.getQueryString();

要将参数动态添加到redirectAction结果,您应该在动态参数中使用 OGNL。

 <param name="actionName">${previousAction.name +'?'+ parameters}</param>

假设您有一个用于参数的 getter 并从保存先前查询字符串、操作名称和命名空间的会话中对其进行初始化。

在启动时将值放入应用程序上下文中并从同一位置检索它。

没有理由在会话中放置任何不是每用户价值的东西。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM