JSOUP未解析的编译:对于Connection类型,ignoreHttpErrors()未定义

时间:2012-08-01 12:55:22

标签: java jsoup

使用ignoreHttpErrors(boolean)

调用JSoup 1.6.3时出现此错误
  

线程“main”中的异常java.lang.Error:未解析的编译   问题:方法ignoreHttpErrors(boolean)未定义   输入连接

我的设置是引用问题吗? 知道怎么解决吗?

Eclipse验证代码没有错误和1个警告。

以下代码无法编译。

try {

            Connection.Response response =   Jsoup.connect(url)
                    .userAgent("Mozilla/5.0 (Windows NT 6.0) AppleWebKit/536.5 (KHTML, like Gecko) Chrome/19.0.1084.46 Safari/536.5")
                    .timeout(10000)
                    .followRedirects(false)
                    .ignoreHttpErrors(true)  // <--- Underlined red in eclipse plus the error msg
                    .execute();

            int statusCode = response.statusCode();
            System.out.println("received status code : " + statusCode);
            if(statusCode == 200) {
                System.out.println("Found : " + statusCode);                    
            }
            else if(statusCode == 404){
                System.out.println("Not Found : " + statusCode);                    
            }
            else if(statusCode == 302){
                System.out.println("Page Moved : " + statusCode);                   
            }

        } catch (SocketTimeoutException e) {
            System.out.println("Timeout occured");

        } catch (IOException e) {
            System.out.println("I/O problem");
        } 

编辑1

import org.jsoup.Connection;
import org.jsoup.nodes.Document;

System.out.println(Connection.class.getProtectionDomain().getCodeSource().getLocation());
System.out.println(Document.class.getProtectionDomain().getCodeSource().getLocation());

输出

file:/C:/opt/glassfish/glassfish/modules/bean-validator.jar
file:/C:/opt/glassfish/glassfish/modules/bean-validator.jar
嗯,不是我所期待的。我的EAR的图书馆目录中有jsoup-1.6.3.jar。调用代码位于EAR中打包的EJB中。

思想?

1 个答案:

答案 0 :(得分:1)

1.6.0以来,ignoreHttpErrors()方法是新方法。显然你在类路径中的某个地方仍然是旧版本的Jsoup,它在类加载中占优势。

要确定其在类路径中的确切位置,请执行以下

System.out.println(Connection.class.getProtectionDomain().getCodeSource().getLocation());

Connection显然是Jsoup的一个。然后应该在给定位置删除重复的旧版本JAR文件。