2009-06-19 4 views
1

POSTを使用して、JavaアプリケーションからWebベースのログインサーバーにフォームを送信しています。javaからのHTMLフォームの提出にはCookieとポップアップブロッカーが必要です

しかし、Webページはjavascript関数)クッキーとinitで検出され、処理されるポップアップブロッカー、(両方が必要です。クッキーがしかdetectPopupBlockers()関数で使用されていることが表示されます

if (document.cookie == "") { 
     alert("Cookies are disabled. Cannot access server with this setting.\nPlease configure your browser to accept cookies."); 
     return; 
    } 

detectPopupBlockers(); 

(ユーザーがポップアップブロッカーを有効にしていない場合にメッセージが表示されたことを示すため)。

onloadパラメータによって呼び出されるinit()関数を完全に回避する方法はありますか?あるいは、何とかクッキーとポップアップブロッカーが実際に有効になっていることをエミュレートしますか?私の唯一の推測は、何とか私がクッキーを持っていないと言っているポップアップメッセージを却下し、とにかくフォームを提出することです。

+0

フォームをプログラマティックに送信している場合、このJavascriptはどのように問題を起こすために実行されますか?おそらくあなたのリクエストにクッキーが来ることを期待しているサーバーがあるかもしれません(その場合は、送信したCookieヘッダーに従ってコードを書いてからリクエストを作り直してください)。 –

+0

私は申し訳ありません、私はこれにかなり新しいですが、あなたの質問は有効であるようです。スクリプトは実行されるべきではありません。 POSTリクエストを送信する方法に何か問題がありますか? PrintStream ps =新しいPrintStream(myHttpURLConnection.getOutputStream()); ps.print( "username =" + username + "& pwd =" + password.toString()); –

答えて

1

それはそうのようにバインドされている場合:

<body onload="init();"> 

またはこのような:直接bodyタグの下

document.body.onload = null; 

document.body.onload = init; 

あなたはこれを行うことができます。

+0

残念ながら、リモートファイルを編集することはできません。 –

2

あなたはWebClientのようなものを使って投稿していると仮定しています.Javascriptを無効にしてチェックを完全にバイパスできませんでしたか?

+0

私はちょうどjavaのHttpURLConnectionクラスを使用しています.WebClientのようなものではありません –

関連する問題