应用程序已部署并正在运行。名为John的用户进入登录页面 - " my-site.com/login.xhtml"并登录。我们从数据库中获取有关它的数据,并且必须将其重定向到主页面应用程序 - " my-site.com/main.xhtml"。同时,在地址栏中,它应该有一个URL,其中包含我们刚从数据库收到的数据(名称),如下所示 - " my-site.com/john"。
有很好的prettyfaces和rewrite库可以解决这些问题,但不幸的是,对于重定向,他们需要知道在部署应用程序时要显示的URL(用户名),但是当然,在用户登录之前我们不知道。
请帮我实现这个?
答案 0 :(得分:0)
您可以按照本教程使用变量模板和查询参数。
https://github.com/ocpsoft/rewrite/blob/master/README.md
从上面链接复制并修改:
return ConfigurationBuilder.begin()
.defineRule()
.when(Direction.isInbound().and(Path.matches("/{p}")))
.perform(Forward.to("/main.xhtml?user={p}"));
让Cdi bean处理用户参数。