1

我正在创建一个激活,在单击注册电子邮件中的 URL 后触发。我想立即执行我的 bean Activate.java,而不是使用 #{validate} 之类的东西创建一个 xhtml 页面。

我不需要任何 xhtml 文件,因为用户将被重定向到登录。实现这一目标的最佳方法是什么?

注意,我使用的是 JSF 2.0。

4

1 回答 1

3

使用小服务程序

@WebServlet("/activate")
public class ActivationServlet extends HttpServlet {

   @EJB
   private ActivationService service;

   @Override
   protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
       String key = request.getParameter("key");

       // ...

       response.sendRedirect(request.getContextPath() + "/login.xhtml");
   }

}

这将在您调用时调用http://localhost:8080/contextpath/activate?key=42

您只会尽可能地错过 JSF 验证工具<f:viewParam>。如果密钥丢失或无效,您想做什么?

于 2012-10-19T15:22:09.493 回答