2013-07-01 2 views
2

Я пытаюсь получить доступ к веб-сайту HTTPS, используя Selenium WebDriver. Я бы хотел сделать это, не показывая окно браузера.Доступ к HTTPS с использованием Selenium WebDriver

DesiredCapabilities capability = DesiredCapabilities.htmlUnit(); 
capability.setCapability(CapabilityType.ACCEPT_SSL_CERTS, true); 
WebDriver driver = new HtmlUnitDriver(capability); 
driver.get("https://en.wikipedia.org/wiki/HTTP_Secure"/); 

И я всегда в конечном итоге с этой ошибкой:

Exception in thread "main" java.lang.VerifyError: Cannot inherit from final class 
at java.lang.ClassLoader.defineClass1(Native Method) 
at java.lang.ClassLoader.defineClass(ClassLoader.java:791) 
at java.security.SecureClassLoader.defineClass(SecureClassLoader.java:142) 
at java.net.URLClassLoader.defineClass(URLClassLoader.java:449) 
at java.net.URLClassLoader.access$100(URLClassLoader.java:71) 
at java.net.URLClassLoader$1.run(URLClassLoader.java:361) 
at java.net.URLClassLoader$1.run(URLClassLoader.java:355) 
at java.security.AccessController.doPrivileged(Native Method) 
at java.net.URLClassLoader.findClass(URLClassLoader.java:354) 
at java.lang.ClassLoader.loadClass(ClassLoader.java:423) 
at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:308) 
at java.lang.ClassLoader.loadClass(ClassLoader.java:356) 
at com.gargoylesoftware.htmlunit.HttpWebConnection.createHttpClient(HttpWebConnection.java:554) 
at com.gargoylesoftware.htmlunit.HttpWebConnection.getHttpClient(HttpWebConnection.java:518) 
at com.gargoylesoftware.htmlunit.HttpWebConnection.getResponse(HttpWebConnection.java:155) 
at com.gargoylesoftware.htmlunit.WebClient.loadWebResponseFromWebConnection(WebClient.java:1486) 
at com.gargoylesoftware.htmlunit.WebClient.loadWebResponse(WebClient.java:1403) 
at com.gargoylesoftware.htmlunit.WebClient.getPage(WebClient.java:305) 
at com.gargoylesoftware.htmlunit.WebClient.getPage(WebClient.java:374) 
at org.openqa.selenium.htmlunit.HtmlUnitDriver.get(HtmlUnitDriver.java:366) 
at org.openqa.selenium.htmlunit.HtmlUnitDriver.get(HtmlUnitDriver.java:355) 

Что я делаю не так?

Кроме того как djangofan государств в его answer, это может быть достигнуто с помощью TrustEverythingSSLTrustManager. Если да, то как?

ответ

0

Это связано с более чем одной ссылкой в ​​пути сборки. У меня такая же проблема, как упоминалось выше. Я ссылался на http-client-4.1 и selenium-rc.jar Я удаляю http-client, comms и logging. Тогда это работает.

Смежные вопросы