HTTP HtmlUnit - Javascript Error

Thraex

Mitglied
Hallo,

ich habe folgendes Problem: wenn ich mich auf eine Website mit Htmlunit einloggen möchte, erhalte ich den Fehler, dass Htmlunit einen Fehler beim ausführen einer js-Methode hat.

Hier mein Code
Java:
final WebClient webClient = new WebClient(BrowserVersion.FIREFOX_3_6);	   
	    HtmlPage page = webClient.getPage(requestSettings);
	    System.out.println(page.asXml());
        List<HtmlAnchor> anchors =  page.getAnchors();
        HtmlAnchor link = null;
        for(HtmlAnchor anchor: anchors)
        {
             if(anchor.asText().indexOf("82") > -1 )
             {
                  link = anchor;
                  break;
             }
        }
        page = link.click();
	    System.out.println(page.asXml());

Eclipse meldet, dass sich das Programm bei
Code:
page = link.click();
beendet wurde.

Hier die Fehlermeldung:
Code:
14.05.2012 18:57:29 com.gargoylesoftware.htmlunit.javascript.StrictErrorReporter error
SCHWERWIEGEND: error: message=[illegal character] sourceName=[onclick event for HtmlAnchor[<a href="\&quot;#\&quot;" onclick="\&quot;return" index.submit_login="">] in [url]http://www.die-website.de/index.php?action=login&server_list=1&show_server_selection=1][/url] line=[0] lineSource=[function(event) {\"return] lineOffset=[19]
Exception in thread "main" ======= EXCEPTION START ========
Exception class=[net.sourceforge.htmlunit.corejs.javascript.EvaluatorException]
com.gargoylesoftware.htmlunit.ScriptException: illegal character
	at com.gargoylesoftware.htmlunit.javascript.JavaScriptEngine$HtmlUnitContextAction.run(JavaScriptEngine.java:595)
	at net.sourceforge.htmlunit.corejs.javascript.Context.call(Context.java:537)
	at net.sourceforge.htmlunit.corejs.javascript.ContextFactory.call(ContextFactory.java:538)
	at com.gargoylesoftware.htmlunit.javascript.JavaScriptEngine.callFunction(JavaScriptEngine.java:545)
	at com.gargoylesoftware.htmlunit.javascript.JavaScriptEngine.callFunction(JavaScriptEngine.java:520)
	at com.gargoylesoftware.htmlunit.html.HtmlPage.executeJavaScriptFunctionIfPossible(HtmlPage.java:896)
	at com.gargoylesoftware.htmlunit.javascript.host.EventListenersContainer.executeEventHandler(EventListenersContainer.java:195)
	at com.gargoylesoftware.htmlunit.javascript.host.EventListenersContainer.executeBubblingListeners(EventListenersContainer.java:214)
	at com.gargoylesoftware.htmlunit.javascript.host.Node.fireEvent(Node.java:725)
	at com.gargoylesoftware.htmlunit.html.HtmlElement$2.run(HtmlElement.java:866)
	at net.sourceforge.htmlunit.corejs.javascript.Context.call(Context.java:537)
	at net.sourceforge.htmlunit.corejs.javascript.ContextFactory.call(ContextFactory.java:538)
	at com.gargoylesoftware.htmlunit.html.HtmlElement.fireEvent(HtmlElement.java:871)
	at com.gargoylesoftware.htmlunit.html.HtmlElement.click(HtmlElement.java:1240)
	at com.gargoylesoftware.htmlunit.html.HtmlElement.click(HtmlElement.java:1195)
	at com.gargoylesoftware.htmlunit.html.HtmlElement.click(HtmlElement.java:1158)
	at main.Browser.login(Browser.java:54)
	at main.Main.main(Main.java:12)
Caused by: net.sourceforge.htmlunit.corejs.javascript.EvaluatorException: illegal character
	at com.gargoylesoftware.htmlunit.javascript.StrictErrorReporter.error(StrictErrorReporter.java:63)
	at net.sourceforge.htmlunit.corejs.javascript.Parser.addError(Parser.java:230)
	at net.sourceforge.htmlunit.corejs.javascript.Parser.addError(Parser.java:208)
	at net.sourceforge.htmlunit.corejs.javascript.Parser.addError(Parser.java:204)
	at net.sourceforge.htmlunit.corejs.javascript.TokenStream.getToken(TokenStream.java:861)
	at net.sourceforge.htmlunit.corejs.javascript.Parser.peekToken(Parser.java:327)
	at net.sourceforge.htmlunit.corejs.javascript.Parser.parseFunctionBody(Parser.java:640)
	at net.sourceforge.htmlunit.corejs.javascript.Parser.function(Parser.java:837)
	at net.sourceforge.htmlunit.corejs.javascript.Parser.parse(Parser.java:561)
	at net.sourceforge.htmlunit.corejs.javascript.Parser.parse(Parser.java:506)
	at net.sourceforge.htmlunit.corejs.javascript.Context.compileImpl(Context.java:2417)
	at net.sourceforge.htmlunit.corejs.javascript.Context.compileFunction(Context.java:1424)
	at net.sourceforge.htmlunit.corejs.javascript.Context.compileFunction(Context.java:1413)
	at com.gargoylesoftware.htmlunit.javascript.host.EventHandler.call(EventHandler.java:76)
	at com.gargoylesoftware.htmlunit.javascript.JavaScriptEngine$4.doRun(JavaScriptEngine.java:538)
	at com.gargoylesoftware.htmlunit.javascript.JavaScriptEngine$HtmlUnitContextAction.run(JavaScriptEngine.java:589)
	... 17 more
Enclosed exception: 
net.sourceforge.htmlunit.corejs.javascript.EvaluatorException: illegal character
	at com.gargoylesoftware.htmlunit.javascript.StrictErrorReporter.error(StrictErrorReporter.java:63)
	at net.sourceforge.htmlunit.corejs.javascript.Parser.addError(Parser.java:230)
	at net.sourceforge.htmlunit.corejs.javascript.Parser.addError(Parser.java:208)
	at net.sourceforge.htmlunit.corejs.javascript.Parser.addError(Parser.java:204)
	at net.sourceforge.htmlunit.corejs.javascript.TokenStream.getToken(TokenStream.java:861)
	at net.sourceforge.htmlunit.corejs.javascript.Parser.peekToken(Parser.java:327)
	at net.sourceforge.htmlunit.corejs.javascript.Parser.parseFunctionBody(Parser.java:640)
	at net.sourceforge.htmlunit.corejs.javascript.Parser.function(Parser.java:837)
	at net.sourceforge.htmlunit.corejs.javascript.Parser.parse(Parser.java:561)
	at net.sourceforge.htmlunit.corejs.javascript.Parser.parse(Parser.java:506)
	at net.sourceforge.htmlunit.corejs.javascript.Context.compileImpl(Context.java:2417)
	at net.sourceforge.htmlunit.corejs.javascript.Context.compileFunction(Context.java:1424)
	at net.sourceforge.htmlunit.corejs.javascript.Context.compileFunction(Context.java:1413)
	at com.gargoylesoftware.htmlunit.javascript.host.EventHandler.call(EventHandler.java:76)
	at com.gargoylesoftware.htmlunit.javascript.JavaScriptEngine$4.doRun(JavaScriptEngine.java:538)
	at com.gargoylesoftware.htmlunit.javascript.JavaScriptEngine$HtmlUnitContextAction.run(JavaScriptEngine.java:589)
	at net.sourceforge.htmlunit.corejs.javascript.Context.call(Context.java:537)
	at net.sourceforge.htmlunit.corejs.javascript.ContextFactory.call(ContextFactory.java:538)
	at com.gargoylesoftware.htmlunit.javascript.JavaScriptEngine.callFunction(JavaScriptEngine.java:545)
	at com.gargoylesoftware.htmlunit.javascript.JavaScriptEngine.callFunction(JavaScriptEngine.java:520)
	at com.gargoylesoftware.htmlunit.html.HtmlPage.executeJavaScriptFunctionIfPossible(HtmlPage.java:896)
	at com.gargoylesoftware.htmlunit.javascript.host.EventListenersContainer.executeEventHandler(EventListenersContainer.java:195)
	at com.gargoylesoftware.htmlunit.javascript.host.EventListenersContainer.executeBubblingListeners(EventListenersContainer.java:214)
	at com.gargoylesoftware.htmlunit.javascript.host.Node.fireEvent(Node.java:725)
	at com.gargoylesoftware.htmlunit.html.HtmlElement$2.run(HtmlElement.java:866)
	at net.sourceforge.htmlunit.corejs.javascript.Context.call(Context.java:537)
	at net.sourceforge.htmlunit.corejs.javascript.ContextFactory.call(ContextFactory.java:538)
	at com.gargoylesoftware.htmlunit.html.HtmlElement.fireEvent(HtmlElement.java:871)
	at com.gargoylesoftware.htmlunit.html.HtmlElement.click(HtmlElement.java:1240)
	at com.gargoylesoftware.htmlunit.html.HtmlElement.click(HtmlElement.java:1195)
	at com.gargoylesoftware.htmlunit.html.HtmlElement.click(HtmlElement.java:1158)
	at main.Browser.login(Browser.java:54)
	at main.Main.main(Main.java:12)
== CALLING JAVASCRIPT ==
function () {
	[native code, arity=0]
}

======= EXCEPTION END ========


Hier ist noch das entsprechende Html-Element

HTML:
<a onclick="return Index.submit_login('82');" href="#">
<span class="world_button_active">82</span>
</a>

Ist das ein Fehler von Htmlunit? Denn mit AutoIt kann man dieses Element problemlos klicken.

Ich hoffe es findet sich jemand der mir helfen kann.

mfg

Thraex
 

diel2001

Bekanntes Mitglied
Java:
<a href="\&quot;#\&quot;" onclick="\&quot;return" index.submit_login="">

So wie aussieht kommt er mit den einfach Anführungszeichen nicht klar.
Er zeigt die Zahl 82 im Stacktrace gar nicht an und sagt das dort illegale Zeichen sind.
Vielleicht hilft dir das ja weiter.
 

Thraex

Mitglied
mhh das könnte das Problem sein - nur weiß ich nicht wie ich es lösen kann, denn in dem Fall würde der Fehler ja bei Htmlunit liegen.
 
Ähnliche Java Themen
  Titel Forum Antworten Datum
P HTMLUnit, JavaScript und Heap Space Problem Netzwerkprogrammierung 3
T HTMLUNIT Formularfüll Versuch Netzwerkprogrammierung 3
A HTMLunit: Form ElementNotFound Netzwerkprogrammierung 4
S Proxy Authentifizierung HtmlUnit Netzwerkprogrammierung 8
M HtmlUnit form finden... Netzwerkprogrammierung 2
M Login mit HtmlUnit Netzwerkprogrammierung 6
P HTTP HtmlUnit... Seite "offen halten" bzw. darauf verweilen Netzwerkprogrammierung 4
J HTMLUnit arbeit sehr langsam . Alternative? Netzwerkprogrammierung 6
T HTTP JAVA Browser Konsolenanfrage(JavaScript) Netzwerkprogrammierung 7
C Gerenderte Website nach der ausführung von JavaScript als HTML Code aus lesen Netzwerkprogrammierung 4
F Website parsen, die mit javascript zusammengebaut wird Netzwerkprogrammierung 1
D Webseite(mit JavaScript-Element) mit Java auslesen Netzwerkprogrammierung 0
E HTTP HttpURLConnection & Javascript Netzwerkprogrammierung 2
D OT JavaScript JQuery AJAX Request Netzwerkprogrammierung 2
P Mit Java Javascript-Anfrage versenden Netzwerkprogrammierung 4
M HTTP HTTPS-Verbindung mittels Java und Javascript Netzwerkprogrammierung 2
L JavaScript Methode mit Java aufrufen Netzwerkprogrammierung 40
D Javascript Funktion aus Java Anwendung ausführen Netzwerkprogrammierung 5
x46 Connection reset by peer: socket write error Netzwerkprogrammierung 6
D Socket Error: java.lang.NullPointerException Netzwerkprogrammierung 1
D Apache Mina Serial: Error Netzwerkprogrammierung 2
B FTP FTTPSClient.retrieveFileStream: error 500 Netzwerkprogrammierung 7
A HTTP Zugriff auf http-Server - Error 400 Netzwerkprogrammierung 11
G Exception: Connection reset by peer: socket write error Netzwerkprogrammierung 2
O Error in generating WSDL from Java: java.lang.ClassNotFoundException: WS Netzwerkprogrammierung 2
S Error 404 obwohl die Datei existiert Netzwerkprogrammierung 9
J 403 error bei POST request Netzwerkprogrammierung 3
IT-MaD Connection reset by peer: socket write error Netzwerkprogrammierung 2
P URL - 403 ERROR - Google News - PHP geht Netzwerkprogrammierung 5
I socket write error bei 2. Sendeversuch Netzwerkprogrammierung 5
N Error 400 Netzwerkprogrammierung 8
J socket write error Netzwerkprogrammierung 3

Ähnliche Java Themen


Oben