0

これを実装したい..
私のpage1.jspにはリンクがあり、リンクはサーブレットをトリガーします

    <a href="Servlet">link1</a>

したがって、ユーザーが link1 を押すと、特にサーブレットで 2 つのことを実行したいと考えています。
1次のページpage2.jspにオブジェクトを渡し、
2ユーザーをpage2.jspにリダイレクトします

私が書いたサーブレットで:

     request.setAttribute("cis", myObjet);
     RequestDispatcher disp = getServletContext().getRequestDispatcher("/page2.jsp");
     disp.forward(request, response);
     response.sendRedirect("page2.jsp");

アプリケーションを実行した後、コンソールに次のようなエラーが表示されます。

応答がコミットされた後に sendRedirect() を呼び出すことはできません

これに関連するいくつかのトピックを読みましたが、解決していません。また、コンソールにこのエラーがありますが、アプリケーションは引き続き動作します...どうもありがとうございました!

4

4 に答える 4

1

あなたがやろうとしていることは根本的に間違っています。転送後にリダイレクトしたり、その逆を行うことはできません。転送またはリダイレクトのいずれかを実行できます。

これらのリンクを読んでください:

http://docs.oracle.com/javaee/6/api/javax/servlet/RequestDispatcher.html#forward(javax.servlet.ServletRequest , javax.servlet.ServletResponse)

http://docs.oracle.com/javaee/6/api/javax/servlet/http/HttpServletResponse.html#sendRedirect(java.lang.String)

http://javapapers.com/jsp/difference-between-forward-and-sendredirect/

お役に立てれば。

サヒール

于 2013-08-06T11:40:33.907 に答える
0

rd.include(req,res); の組み合わせで作業できます。そして res.sendRedirect(-); 同時に、 rd.forward(req,res); の組み合わせではできません。そして res.sendRedirect(-); 同時に。どちらも新しいページに転送されるためです。

于 2013-08-06T12:22:28.290 に答える