-1
public void handleRequest(HttpServletRequest request,
        HttpServletResponse response) throws ServletException, IOException {

    logger.debug("Entering in DirectPayPaymentResponseHandler handleRequest() method");
    logger.debug("responseParameter="
            + request.getParameter("responseParameter"));
    logger.debug("responseparams=" + request.getParameter("responseparams"));
    String respParams = request.getParameter("responseparams");

    try{
      boolean flag=processRequest(respParams);
      if(flag){
        //response.sendRedirect("http://localhost:8080/customer/Success.xhtml");            
      } else {
        //response.sendRedirect("http://localhost:8080/customer/Failure.xhtml");        
      }
    } catch(Exception e){
        logger.fatal("Error:- "+ e.getMessage());
    }
4

1 回答 1

1

我假设您正在寻找一种转发请求的方法(ExternalContext 在 jsf 中可用,而不是 servlet)。一个简单的方法是

RequestDispatcher rd = request.getRequestDispatcher("/path/filename.xhtml");
rd.forward(request,response);

这不会像 sendRedirect() 那样导致来自浏览器的第二次请求,并保持所有发送的信息可供进一步检查。

于 2015-07-30T11:09:16.240 回答