Ich benutze eine Bibliothek - HtmlUnit - und ich habe gerade von Version 2.4 auf Version 2.5 aktualisiert. Wenn ich meinen Code gegen 2.5 kompiliere, bekomme ich ein seltsames Objekt, "das nicht dereferenziert werden kann", das mir nicht bekannt ist. Außerdem verstehe ich nicht, warum es funktioniert, wenn ich den Code in zwei Zeilen schreibe, aber scheitere, wenn ich es als Einzeiler mache. HierJava-Objekt "kann nicht dereferenziert werden"
ist der Code:
//this compiles fine
HtmlInput usernameInput = form.getInputByName("username");
usernameInput.setValueAttribute(userName);
//this fails to compile
form.getInputByName("password").setValueAttribute(passWord);
Dies ist die Fehlermeldung, die ich erhalte, wenn ich ANT kompilieren verwenden und Java 1.6:
[javac] E:\workspaces\europa\PortalTestSuite\src\com\carefirst\portal\test\controller\EAITest.java:32: com.gargoylesoftware.htmlunit.html.HtmlInput cannot be dereferenced
[javac] form.getInputByName("password").setValueAttribute(passWord);
[javac] ^
com.gargoylesoftware.htmlunit.html.HtmlInput kann nicht sein, dereferenziert? Ich habe beim Autoboxing Probleme mit der Entfernung gesehen, aber nicht mit Objekten. Was bedeutet es in diesem Zusammenhang? Und warum funktioniert der Code in einer Richtung und nicht in der anderen?
Die Version 2.5, die ich verwende, ist Snapshot Build - die neueste stabile Version ist immer noch 2.4. Ich habe den 2.5 Snapshot unter http://build.canoo.com/htmlunit/artifacts/ - ich brauchte ihn, um ein Problem zu lösen, das 2.4 mit jQuery hat. Es hat dieses Problem gelöst, aber anscheinend neue gebracht ... –
Was bedeutet "es nur als HtmlInput und nicht als implementiertes HtmlInput" zu verstehen? Bitte erläutern Sie, was das bedeutet und/oder geben Sie einen Hinweis dafür. –
schlechte Angewohnheit von mir ... versucht, in Laien Begriff zu erklären und dabei zu verlieren Bedeutung ... Reference wurde zuerst google "Java final Methode" Entschuldigung ich habe es nicht zur Verfügung gestellt. der Antwort hinzugefügt. – youri