2012-05-05 3 views
0

私は別のURL(クロスドメイン)にリダイレクトするために使用しているJSPページを持っていますので、jQueryを使用してresponse.sendRedirectをトリガーするボタンページが読み込まれると直ちにリダイレクトされ、アラートを待つことさえありません。ここでの問題は何ですか?助けてください。ボタンをクリックする前でもJSPが別のページにリダイレクトされます

は身体負荷にそれはあなたがそれをコード化しているとして、JSPスクリプトレットとJavaScriptが同期して実行されることを期待しているように見える

<script language="JavaScript"> 
    function load(){ 
     <% 
     String message=(String)request.getAttribute("error"); 
     if(message != null){ 
      out.println("alert(\"" + message + "\");"); 
     } 
     %> 

    } 

    /*a range of options (products) based on which it decides redirection or form submission 
    * will lead to the new webapp*/ 
    var productArray=["iirDefault","ilmDefault","mdmDefault"]; 
    $(document).ready(function(){  

    }); 

    /*Button event handler for the intermediate screen for product selection after login*/ 
    $('#btnLaunchCSM').click(function(event){ 
     event.preventDefault(); 

     var selectedProduct=$('input[name=product_name]:checked').val(); 
     if(jQuery.inArray(selectedProduct, productArray)!=-1) 
     { 
      e_add=$("#emailaddress").val(); 
      p_id=$('input[name=project_id]:checked').val(); 
      alert(e_add+", "+p_id); 
      <% 
      String e_add=request.getParameter("email_id"); 
      String p_id=request.getParameter("project_id"); 
      response.sendRedirect("http://abhishek:9090/abc/view/loginProxy.jsp?email_id="+e_add+"&project_id="+p_id); 
      %> 


     } 
     else 
     { 
      $("#launchSSO").submit(); 
     } 

    }); 
</script> 

答えて

2

負荷()を呼び出します。本当じゃない。 Java/JSPはWebサーバーで実行され、HTMLを生成します。 HTML/JSはWebブラウザで動作します。ブラウザで右クリックし、ソースを表示。 Java/JSPが正しく機能していれば、生成されたHTML/JS出力には1行も表示されません。

サーバーに(ajax)HTTPリクエストを送信する必要があります。これにはjQueryを使うことができます。または、リダイレクトをJSで完全に実行できます。その臭い<% %>ブロックを交換してください:

window.location = "http://abhishek:9090/abc/view/loginProxy.jsp?email_id="+e_add+"&project_id="+p_id; 
+0

私は(http://stackoverflow.com/questions/10459790/what-is-wrong-with-my-post-request)[前POSTリクエストを送信]しましたが、原因ドメイン間のセキュリティにはブラウザで許可されていないので、代わりに 'response.sendRedirect' – abi1964

+0

あなたのサーバーに送信し、それをプロキシ用に再生させます。もちろん、JavaScriptでリダイレクトすることもできます。 – BalusC

+0

ありがとう 'window.location'は私が必要としたものです – abi1964

関連する問題