-2

javaでメソッドの1つを呼び出し、そこからリダイレクトを実行する必要があるajax呼び出しを介してユーザーをリダイレクトできるかどうかを知りたいだけです

4

3 に答える 3

6

AJAX 呼び出しは生データを Javascript コールバックに返します。
ブラウザに何もするように指示することはできません。

代わりに、JavaScript コードに新しいページに移動するように指示できます。

于 2013-03-11T13:44:59.910 に答える
2

そのような ajax リダイレクト (たとえば、doFilter のフィルター) を構築できます。

String facesRequestHeader = httpServletRequest.getHeader( "Faces-Request" );

boolean isAjaxRequest = facesRequestHeader != null
        && facesRequestHeader.equals( "partial/ajax" );

String url = MessageFormat.format( "{0}://{1}:{2,number,####0}{3}",
        request.getScheme(), request.getServerName(),
        request.getServerPort(), YOUR_NEW_URL);

PrintWriter pw = response.getWriter();
pw.println( "<?xml version=\"1.0\" encoding=\"UTF-8\"?>" );
pw.println( "<partial-response><redirect url=\"" + url
        + "\"></redirect></partial-response>" );
        pw.flush(););

これは、サーブレットや JSF などを使用している場合で、ライフサイクルに進む前にリダイレクトできます。

于 2013-03-11T14:16:21.490 に答える
0

Java から ajax 応答を送信し、その応答に従ってユーザーをリダイレクトできます。

于 2013-03-11T13:45:22.737 に答える