情况是这样的,项目中要在登录界面里增加一个选择项,也就是如下所示的RadioButton
<input type="radio" name="teamType" value="teamA"> Team A<br>
<input type="radio" name="teamType" value="teamB" checked> Team B
这个radioButton里的两项分别表示登录时的不同身份,即可以选择Team A也可以选择Team B登录.登录成功后,页面就跳转到"/pages/content.html"指定的页面来,再往下的Server处理逻辑中把这个teamType消息保存到Session中去.
若没有用Acegi的话,这个保存动作很容易地用如下方式做到了,
session.setAttribute("teamType", request.getParameter("teamType"));
可项目中已用Acegi框架了,这个Acegi在登录验证后是以redirect的方式传递request的,也就是登录成功后跳转到"/pages/content.html"这个页面是以redirect的方式来的,这样自然在后面通过request.getParameter("teamType")方式来取parameter时得到的是null.
这怎么办?Acegi把路给堵死了.
能不能以什么方式配置下这个Acegi不让它在登录成功后的跳转时采用redirect方式呢?用redirect有什么好处?不用这个redirect又有什么坏处?
<input type="radio" name="teamType" value="teamA"> Team A<br>
<input type="radio" name="teamType" value="teamB" checked> Team B
这个radioButton里的两项分别表示登录时的不同身份,即可以选择Team A也可以选择Team B登录.登录成功后,页面就跳转到"/pages/content.html"指定的页面来,再往下的Server处理逻辑中把这个teamType消息保存到Session中去.
若没有用Acegi的话,这个保存动作很容易地用如下方式做到了,
session.setAttribute("teamType", request.getParameter("teamType"));
可项目中已用Acegi框架了,这个Acegi在登录验证后是以redirect的方式传递request的,也就是登录成功后跳转到"/pages/content.html"这个页面是以redirect的方式来的,这样自然在后面通过request.getParameter("teamType")方式来取parameter时得到的是null.
这怎么办?Acegi把路给堵死了.
能不能以什么方式配置下这个Acegi不让它在登录成功后的跳转时采用redirect方式呢?用redirect有什么好处?不用这个redirect又有什么坏处?