Java HTMLUNIT中的代理自动配置错误
我有一个使用Htmlunit的应用程序,我需要使用PAC文件,但Htmlunit显示了一个错误,我不知道为什么 PAC文件是用Javascript编写的,扩展名为“.cgi” 代码是:Java HTMLUNIT中的代理自动配置错误,java,proxy,htmlunit,pac,Java,Proxy,Htmlunit,Pac,我有一个使用Htmlunit的应用程序,我需要使用PAC文件,但Htmlunit显示了一个错误,我不知道为什么 PAC文件是用Javascript编写的,扩展名为“.cgi” 代码是: WebClient-WebClient=new-WebClient() webClient.getOptions().setJavaScriptEnabled(true) webClient.getOptions().setActiveXNative(true) webClient.getOptions().se
WebClient-WebClient=new-WebClient()代码>
webClient.getOptions().setJavaScriptEnabled(true)代码>
webClient.getOptions().setActiveXNative(true)代码>
webClient.getOptions().setAppletEnabled(true)代码>
webClient.getOptions().setCssEnabled(false)代码>
webClient.getOptions().setPopupBlockerEnabled(true)代码>
webClient.getOptions().setRedirectEnabled(true)代码>
webClient.getOptions().setThroweExceptionOnFailingStatusCode(false)代码>
webClient.getOptions().setThroweExceptionOnScriptError(false)代码>
webClient.getOptions().setUseInsecureSSL(true)代码>
webClient.setAjaxController(新的NicelyResynchronizingAjaxController())代码>
webClient.getOptions().getProxyConfig().SetProxyAutoConfigure(“http://domain/proxy.pac");代码>
HtmlPage currentPage=webClient.getPage(web)代码>
错误是:
线程“main”java.lang.StackOverflower中出现异常
在java.io.IOException.(IOException.java:58)
位于java.io.InterruptedIOException。(InterruptedIOException.java:64)
位于java.net.SocketTimeoutException。(SocketTimeoutException.java:43)
位于java.net.SocketInputStream.socketRead0(本机方法)
位于java.net.SocketInputStream.read(SocketInputStream.java:150)
位于java.net.SocketInputStream.read(SocketInputStream.java:121)
位于org.apache.http.impl.io.AbstractSessionInputBuffer.fillBuffer(AbstractSessionInputBuffer.java:160)
位于org.apache.http.impl.io.SocketInputBuffer.fillBuffer(SocketInputBuffer.java:84)
位于org.apache.http.impl.io.SocketInputBuffer.isDataAvailable(SocketInputBuffer.java:95)
位于org.apache.http.impl.AbstractHttpClientConnection.isStale(AbstractHttpClientConnection.java:310)
位于org.apache.http.impl.conn.ManagedClientConnectionImpl.isStale(ManagedClientConnectionImpl.java:158)
位于org.apache.http.impl.client.DefaultRequestDirector.execute(DefaultRequestDirector.java:432)
位于org.apache.http.impl.client.AbstractHttpClient.doExecute(AbstractHttpClient.java:863)
在org.apache.http.impl.client.CloseableHttpClient.execute(CloseableHttpClient.java:72)
位于com.gargoylesoftware.htmlunit.HttpWebConnection.getResponse(HttpWebConnection.java:167)
在com.gargoylesoftware.htmlunit.WebClient.loadWebResponseFromWebConnection上(WebClient.java:1281)
在com.gargoylesoftware.htmlunit.WebClient.loadWebResponse(WebClient.java:1198)上
在com.gargoylesoftware.htmlunit.WebClient.getPage(WebClient.java:307)上
在com.gargoylesoftware.htmlunit.WebClient.getPage(WebClient.java:376)上
在com.gargoylesoftware.htmlunit.WebClient.getPage(WebClient.java:361)上
在com.gargoylesoftware.htmlunit.WebClient.loadWebResponseFromWebConnection上(WebClient.java:1237)
位于com.gargoylesoftware.htmlunit.WebClient.loadWebResponseFromWebConnection(WebClient.java:1339)
在com.gargoylesoftware.htmlunit.WebClient.loadWebResponse(WebClient.java:1198)上
在com.gargoylesoftware.htmlunit.WebClient.getPage(WebClient.java:307)上
在com.gargoylesoftware.htmlunit.WebClient.getPage(WebClient.java:376)上
在com.gargoylesoftware.htmlunit.WebClient.getPage(WebClient.java:361)
有更多的错误行,但我没有推杆
有什么想法吗
webClient.getOptions().getProxyConfig().setProxyAutoConfigUrl("http://domain/proxy.pac");
我认为上面的问题请检查代理的url,这是不正确的。
请先在浏览器中打开它,如果它已正确打开,然后在代码中应用它 这个网址是发明出来的。当我检查代理的真实url时,浏览器会下载一个扩展名为“.cgi”的文件,其中包含javascript代码。也许这就是问题所在?换句话说,我有一个javascript函数文件(我认为是自动配置代理),扩展名为“cgi”,而不是pac(我不知道这是否正确,因为我不理解代理)。有没有办法将此配置分配给webClient(