2017-07-19 5 views
0

HtmlUnitメソッドを使用して特定のウェブサイトにログインする際に問題があります。 サイトのフォームの送信ボタンは次のようになります。HtmlUnit - ボタンのクリック()で応答がありません

<td> 
    <input type="button" value="Login!" onclick="encPass(UTM_STUDIO_ADMIN);" class="normalButton"> 
</td> 

鉱山のコードスニペット:

final HtmlButtonInput submitLogin = form.getInputByValue("Login!"); 

HtmlPage returnPage = submitLogin.click(); 
System.out.println(returnPage.asText()); 

はまだ、それが満たされたユーザ名とパスワードフィールドを持つログサイトを印刷し、それがすべてです。

Webクライアントの設定:

wclient.getOptions().setPrintContentOnFailingStatusCode(false); 
wclient.getOptions().setCssEnabled(false); 
wclient.getOptions().setThrowExceptionOnFailingStatusCode(false); 
wclient.getOptions().setThrowExceptionOnScriptError(false); 
wclient.getOptions().setUseInsecureSSL(true); 
wclient.getOptions().setJavaScriptEnabled(false); 

私はすでに自分の追加したボタンを経由してログインしようとし、そして、待機中のJSを有効にする、などリダイレクトのアイデアを果たしたが、私は、トピックの新たなんだしてきました既に試したアイデアのチェックを外すことはできません。 助けていただければ幸いです。前もって感謝します!

答えて

0

ボタンはタイプボタンです(送信しません)。この場合、ブラウザはボタンのみをレンダリングしますが、ユーザーがボタンをクリックすると、アプリケーション開発者は何かを実行する必要があります。あなたの場合、ボタンはいくつかのJavaScriptをトリガーします。

しかし、あなたはJavaScriptを有効にした場合、あなたは

wclient.getOptions().setJavaScriptEnabled(false); 

によって無効Javscriptを持っているかもしれない、あなたの問題が消えます。

通常、問題が発生したときにデフォルト設定から開始することをお勧めします。デフォルトは、実際のブラウザに可能な限り近くなるように設定されています。

+0

'

+0

ButtonInputはクリック可能です(別のケースでチェックされます)。 JSを有効にしても、どんな場合でも助けにならず、サイトのコードが見つからない/間違っているという大きな問題を抱えているため、悪化さえしました。 – Canert

関連する問題