【问题标题】:Connection between javafx2.2 webengine and webscarab failsjavafx2.2 webengine和webscarab之间的连接失败
【发布时间】:2012-10-28 23:13:51
【问题描述】:

这是交易。我想在我的 javaFX2.2 Web 引擎浏览器中将 WebScarab 设置为内部代理。我尝试了here 中描述的解决方案,并且还查看了同一页面中的链接,但我在 Web 视图中遇到错误。这是我的代码示例:

        public WebBrowser() {

        System.setProperty("http.proxyHost", "localhost");
        System.setProperty("http.proxyPort", "8008");
        //ProxySelector.setDefault(new AlwaysProxySelector());

        WebView view;
        final WebEngine eng;    
        view = new WebView();
        view.setMinSize(10, 10);
        view.setPrefSize(500, 400);
        eng = view.getEngine();           
        eng.load("http://www.google.gr");
    }

如您所见,我也尝试使用 AlwaysProxySelector 类的替代解决方案。

Web Scarab 有一个代理,默认在 localhost 的 8008 端口运行。首先我运行网络圣甲虫,然后是我的 JavaFX 应用程序。这就是问题所在。应用程序不会在输出屏幕中引发任何异常。但是在网络视图中,我要加载的页面永远不会出现,并且来自网络圣甲虫的消息会在网络视图中加载,如下所示: WebScarab 在尝试检索时遇到错误

GET http://www.google.gr:80/HTTP/1.1

接受语言:en-us,en;q=0.5

接受编码:gzip

接受字符集:ISO-8859-1,utf-8;q=0.7,*;q=0.7

用户代理:Mozilla/5.0(Windows NT 6.1;Win64;x64)AppleWebKit/535.14(KHTML,如 Gecko)JavaFX/2.2 Safari/535.14

接受:text/html,application/xhtml+xml,application/xml;q=0.9,/;q=0.8

缓存控制:无缓存

编译指示:无缓存

主机:www.google.gr

代理连接:保持活动

错误是:

连接被拒绝:连接

at java.net.DualStackPlainSocketImpl.waitForConnect(Native Method)

at java.net.DualStackPlainSocketImpl.socketConnect(Unknown Source)

at java.net.AbstractPlainSocketImpl.doConnect(Unknown Source)

at java.net.AbstractPlainSocketImpl.connectToAddress(Unknown Source)

at java.net.AbstractPlainSocketImpl.connect(Unknown Source)

at java.net.PlainSocketImpl.connect(Unknown Source)

at java.net.SocksSocketImpl.connect(Unknown Source)

at java.net.Socket.connect(Unknown Source)

at org.owasp.webscarab.httpclient.URLFetcher.connect(URLFetcher.java:363)

at org.owasp.webscarab.httpclient.URLFetcher.fetchResponse(URLFetcher.java:224)

at org.owasp.webscarab.plugin.saml.SamlHTTPClient.fetchResponse(SamlHTTPClient.java:84)

at org.owasp.webscarab.plugin.proxy.CookieTracker$Plugin.fetchResponse(CookieTracker.java:130)

at org.owasp.webscarab.plugin.proxy.BrowserCache$Plugin.fetchResponse(BrowserCache.java:101)

at org.owasp.webscarab.plugin.proxy.RevealHidden$Plugin.fetchResponse(RevealHidden.java:100)

at org.owasp.webscarab.plugin.proxy.BeanShell$Plugin.fetchResponse(BeanShell.java:229)

at org.owasp.webscarab.plugin.proxy.ManualEdit$Plugin.fetchResponse(ManualEdit.java:243)

at org.owasp.webscarab.plugin.proxy.ConnectionHandler.run(ConnectionHandler.java:228)

at java.lang.Thread.run(Unknown Source)

从错误中我可以理解,似乎网络圣甲虫成功连接到页面,但无法将页面检索回 webview。每个页面都会出现同样的问题,不仅仅是谷歌。 我不想使用任何其他代理,而只想使用网络圣甲虫来获得使用其插件的优势。感谢您的任何想法。

【问题讨论】:

  • 使用localhost:8008通过浏览器访问页面时是否可以返回页面,或者您是否尝试过请求不同的URL?

标签: proxy javafx-2


【解决方案1】:

由于某种原因,WebScarab 无法访问相关网站。这显然与 WebView 无关,因此我们可以从等式中消除它。

最可能的问题是 WebScarab 本身配置了一个代理,WebScarab 无法访问。要检查这一点,请转到工具 -> 代理,并确保没有配置代理(除非您需要上游代理才能正常访问站点,在这种情况下,请确保已正确配置。)

【讨论】:

  • 感谢您的快速回答。这就是问题所在。我从“工具”->“代理”中删除了所有内容,该应用程序现在似乎可以正常工作了。
猜你喜欢
  • 2014-08-21
  • 1970-01-01
  • 1970-01-01
  • 2020-10-17
  • 1970-01-01
  • 2018-12-22
  • 2020-06-29
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多