J'essaie d'ouvrir des pages Web et de cliquer sur ses liens en utilisant HtmlUnit dans java mais je reçois une erreur d'initialisation. Quelqu'un peut-il me dire comment résoudre cette erreur. Voici mon code:Automation using HtmlUnit
package learn1;
import java.net.URL;
import com.gargoylesoftware.htmlunit.WebClient;
import com.gargoylesoftware.htmlunit.html.HtmlAnchor;
import com.gargoylesoftware.htmlunit.html.HtmlForm;
import com.gargoylesoftware.htmlunit.html.HtmlPage;
import com.gargoylesoftware.htmlunit.html.HtmlSubmitInput;
import com.gargoylesoftware.htmlunit.html.HtmlTextInput;
import org.junit.Test;
public class SearchExample{
public static void main(String args[]) throws Exception {
SearchExample exe=new SearchExample();
exe.testSearch();
}
@Test
public void testSearch() throws Exception {
final WebClient webClient = new WebClient();
webClient.setThrowExceptionOnScriptError(false);
final URL url = new URL("http://www.google.com");
final HtmlPage page = (HtmlPage)webClient.getPage(url);
System.out.println(page.getTitleText());
HtmlForm form = (HtmlForm) page.getForms().get(0);
HtmlTextInput text = (HtmlTextInput) form.getInputByName("q");
text.setValueAttribute("HtmlUnit");
HtmlSubmitInput btn = (HtmlSubmitInput) form.getInputByName("btnG");
HtmlPage page2 = (HtmlPage) btn.click();
HtmlAnchor link = page2.getAnchorByHref("http://htmlunit.sourceforge.net/");
HtmlPage page3 = (HtmlPage) link.click();
System.out.print(page3.getTitleText());
/*assertEquals(page3.getTitleText(), "htmlunit - Welcome to HtmlUnit");
assertNotNull(page3.getAnchorByHref("gettingStarted.html"));*/
}
}
J'obtiens l'erreur suivante:
Exception in thread "main" java.lang.NoClassDefFoundError: org/apache/http/client/CredentialsProvider at learn1.SearchExample.testSearch(SearchExample.java:26) at learn1.SearchExample.main(SearchExample.java:19) Caused by: java.lang.ClassNotFoundException: org.apache.http.client.CredentialsProvider at java.net.URLClassLoader.findClass(Unknown Source) at java.lang.ClassLoader.loadClass(Unknown Source) at sun.misc.Launcher$AppClassLoader.loadClass(Unknown Source) at java.lang.ClassLoader.loadClass(Unknown Source) ... 2 more
ne comprends pas pourquoi je reçois cette erreur quand je l'ai déjà importé com.gargoylesoftware.htmlunit.WebClient
Veuillez poster votre piletrace 'd'erreur d'initialisation '. – sudo
Exception in thread "main" java.lang.NoClassDefFoundError: org/apache/http/client/CredentialsProvider \t à learn1.SearchExample.testSearch (SearchExample.java:26) \t à learn1.SearchExample.main (SearchExample.java: 19) causée par: java.lang.ClassNotFoundException: org.apache.http.client.CredentialsProvider \t à java.net.URLClassLoader.findClass (Source inconnue) \t à java.lang.ClassLoader.loadClass (Source inconnue) \t à sun.misc.Launcher $ AppClassLoader.loadClass (source inconnue) \t à java.lang.ClassLoader.loadClass (source inconnue) \t. .. 2 plus – ACE