Struts2中的个性化URL

时间:2013-04-09 08:48:38

标签: java parameters struts2 url-rewriting wildcard-mapping

我目前正在开发一个允许匿名使用的Struts2 Web应用程序。我想要匿名用户,URL将如下:

http://localhost:8080/myapp

但是在用户登录后,URL将根据用户名进行个性化,例如:

http://localhost:8080/myapp/Cuong-Doan

请建议我一个可以帮助我实现它的插件/技术。

2 个答案:

答案 0 :(得分:1)

您可以尝试使用Tuckey的UrlRewriteFilter。登录后添加会话属性,例如loggedUsername=Cuong-Doan。然后使用rule元素的session-attribute参数在UrlRewriteFilter condition中分析此属性。如果它存在 - >重定向,使用backreferences将其添加到网址。

答案 1 :(得分:1)

个性化可以通过设置指定角色的参数来完成。看看问题中的URL,我决定给你想象一下用于重现SEO优化URL的技术。这种技术称为"Parameters after action names"。例如,使用您可以使用的操作映射您的角色

@Action(value = "/*", params = {"person", "{1}"}) 

因此,在映射该操作后,您将通过可在操作中使用的person参数获取有关此人的信息。