无法将bean从servlet重定向到jsf .xhtml页面

时间:2015-11-19 17:19:17

标签: java jsf servlets jsf-2

我正在尝试将bean从servlet重定向到jsf页面。这是一个学校项目,我曾向我的教授寻求帮助,他提供了以下代码作为解决方案。我看到它在我的项目中完美运行,但是在他的机器上,因为我去了他的办公室寻求帮助。现在我回家了,我在项目中添加了相同的四行代码,但它没有重定向到.xhtml页面。

调试显示它在ExternalContext行失败。此外,在捕获异常时,堆栈跟踪只是说“null”。我不明白为什么我的项目,就像我在教授的计算机上看到的完全相同的代码,不能正常工作。洛尔。

getServletContext().setAttribute("bean", myBean);
FacesContext facesContext = FacesContext.getCurrentInstance();
ExternalContext externalContext = facesContext.getExternalContext(); //failing here
externalContext.redirect("myJSPPage.xhtml");

1 个答案:

答案 0 :(得分:0)

FacesContext只有在FacesServlet控制当前请求时才存在,否则FacesContext.getCurrentInstance()将返回null。如果它在JSF托管bean内部的方法中执行,则此代码将起作用。所以,也许您只是复制了这段代码并将其粘贴到您的自定义servlet中。