Ich versuche HtmlUnit zum ersten Mal. Ich entwickle auf Linux Mint 17.1. Ich bin auch neu in Java. Ich habe jenkins-htmlunit installiert und meine Java-Umgebung ist java-7-openjdk-amd64.mehrere Fehler bei der Verwendung von HtmlUnit erhalten WebClient.getPage
fand ich das folgende Beispiel:
import com.gargoylesoftware.htmlunit.WebClient;
import com.gargoylesoftware.htmlunit.html.HtmlPage;
public class myClient {
public static void main(String[] args) throws Exception {
WebClient webClient = new WebClient();
HtmlPage page = webClient.getPage("http://htmlunit.sourceforge.net");
System.out.println(page.asXml());
}
}
Nachdem jedoch die folgenden Shell-Befehle ausführen:
Javac -cp "/ usr/share/java/" myClient .java export CLASSPATH = $ CLASSPATH:/usr/teilen/java/ java myClient
ich folgende Fehler:
Exception in thread "main" java.lang.NullPointerException bei com.gargoylesoftware.htmlunit.javascript.SimpleScriptable.getPrototype (SimpleScriptable.java:247) bei com.gargoylesoftware.htmlunit.javascript.SimpleScriptable.makeScriptableFor (SimpleScriptable.java:217) bei com.gargoylesoftware.htmlunit.html.DomNode.getScriptObject (DomNode.java:790) bei com.gargoylesoftware.htmlunit. html.HtmlScript.setAndEx ecuteReadyState (HtmlScript.java:457) bei com.gargoylesoftware.htmlunit.html.HtmlScript $ 1.execute (HtmlScript.java:212) bei com.gargoylesoftware.htmlunit.html.HtmlScript.onAllChildrenAddedToPage (HtmlScript.java:238) bei com.gargoylesoftware.htmlunit.html.HTMLParser $ HtmlUnitDOMBuilder.endElement (HTMLParser.java:699) bei org.apache.xerces.parsers.AbstractSAXParser.endElement (Unbekannt Quelle) bei com.gargoylesoftware.htmlunit. html.HTMLParser $ HtmlUnitDOMBuilder.endElement (HTMLParser.java:657) bei org.cyberneko.html.HTMLTagBalancer.callEndElement (HTMLTagBalancer.java:1170) bei org.cyber neko.html.HTMLTagBalancer.endElement (HTMLTagBalancer.java:1072) bei org.cyberneko.html.filters.DefaultFilter.endElement (DefaultFilter.java:206) bei org.cyberneko.html.filters.NamespaceBinder.endElement (NamespaceBinder.java:330) bei org.cyberneko.html.HTMLScanner $ ContentScanner.scanEndElement (HTMLScanner.java:3116) bei org.cyberneko.html.HTMLScanner $ ContentScanner.scan (HTMLScanner.java:2083) bei org.cyberneko.html.HTMLScanner.scanDocument (HTMLScanner.java:918) bei org.cyberneko.html.HTMLConfiguration.parse (HTMLConfiguration.java:499) bei org.cyberneko.html.HTMLConfiguration.pars e (HTMLConfiguration.java:452) bei org.apache.xerces.parsers.XMLParser.parse (Unknown Source) bei com.gargoylesoftware.htmlunit.html.HTMLParser $ HtmlUnitDOMBuilder.parse (HTMLParser.java:901) bei com.gargoylesoftware.htmlunit.html.HTMLParser.parse (HTMLParser.java:350) bei com.gargoylesoftware.htmlunit.html.HTMLParser.parseHtml (HTMLParser.java:304) bei com.gargoylesoftware.htmlunit.DefaultPageCreator.createHtmlPage (DefaultPageCreator.java:134) bei com.gargoylesoftware.htmlunit.DefaultPageCreator.createPage (DefaultPageCreator.java:101) bei com.gargoylesoftware.htmlunit.WebClient.loadWebResponseInto (WebClient.java:449) bei com.gargoylesoftware.htmlunit.WebClient.getPage (WebClient.java:332) bei com.gargoylesoftware.htmlunit.WebClient.getPage (WebClient.java:389) bei com.gargoylesoftware.htmlunit.WebClient.getPage (WebClient .java: 374) bei myClient.main (myClient.java:8)
Ihr Code funktioniert für mich. Welche Version von htmlunit verwenden Sie? – haihui