【发布时间】:2014-05-29 10:17:17
【问题描述】:
我有两个不同的 JSF 页面让我们假设 A.jsf 和 B.jsf 但两者都调用相同的托管 bean 不同的方法 ManagedBean.java
A.jsf 正在调用 SessionScoped 托管 bean 方法,我在请求类对象中设置了一些属性
HttpServletRequest request = (HttpServletRequest) FacesContext
.getCurrentInstance().getExternalContext().getRequest();
request.setAttribute("token", requestToken.getToken());
request.setAttribute("tokenSecret", requestToken.getTokenSecret());
然后像这样重定向另一边
response.sendRedirect(requestToken.getAuthorizationURL());
现在成功登录后,我正在打开我网站的另一个 JSF 页面假设 b.jsf 并且从这个页面我正在调用这样的方法
<f:event listener="#{ManagedBean.redirectLogin2}" type="preRenderView" />
并调用相同的 Managedbean 但另一种方法
public String redirectLogin2() throws TwitterException {
HttpServletRequest request = (HttpServletRequest) FacesContext
.getCurrentInstance().getExternalContext().getRequest();
}
但是当我在上面的方法中做redirectLogin2()
request.getAttribute("token")
request.getAttribute("tokenSecret")
两者都给 Null。什么出租车是这里的问题?
【问题讨论】: