Java jsoup statusCode赢了';t打印404错误

Java jsoup statusCode赢了';t打印404错误,java,jsoup,Java,Jsoup,在我的Javaservlet中,我希望根据从请求返回到url的状态代码执行一些操作 我的代码如下所示: String source = "http://urltoparse.org/name/date"; boolean validQuery = jsoupHandler.sourceExists(source); int statusCode = jsoupHandler.srcExists(source); response.getWriter().println("stat: " + s

在我的Javaservlet中,我希望根据从请求返回到url的状态代码执行一些操作

我的代码如下所示:

String source = "http://urltoparse.org/name/date";
boolean validQuery = jsoupHandler.sourceExists(source);

int statusCode = jsoupHandler.srcExists(source);
response.getWriter().println("stat: " + statusCode);
String source = "http://urltoparse.org/name/date2";
org.jsoup.HttpStatusException: HTTP error fetching URL. Status=404, URL=http://urltoparse.org/name/date2
jsoupHandler:

public class JSoupHandler {
    public int srcExists(String source) throws IOException {
        Connection.Response resp = Jsoup.connect(source).execute();
        System.out.println("status" + resp.statusCode());
        return resp.statusCode();
    }
}
statusCode==200
时,它会打印

浏览器中的
stat:200
,以及jsouphandler的我的控制台中的
status200

但是,当我输入一个应该返回404的源时,如下所示:

String source = "http://urltoparse.org/name/date";
boolean validQuery = jsoupHandler.sourceExists(source);

int statusCode = jsoupHandler.srcExists(source);
response.getWriter().println("stat: " + statusCode);
String source = "http://urltoparse.org/name/date2";
org.jsoup.HttpStatusException: HTTP error fetching URL. Status=404, URL=http://urltoparse.org/name/date2
浏览器不打印任何内容,而我的控制台打印如下错误:

String source = "http://urltoparse.org/name/date";
boolean validQuery = jsoupHandler.sourceExists(source);

int statusCode = jsoupHandler.srcExists(source);
response.getWriter().println("stat: " + statusCode);
String source = "http://urltoparse.org/name/date2";
org.jsoup.HttpStatusException: HTTP error fetching URL. Status=404, URL=http://urltoparse.org/name/date2
为什么浏览器和控制台的打印语句都不打印状态代码?我想做一些像

if (statusCode != 200) {
//do something
}
但是我不能进入这个条件语句

我已经看过这个链接:

但无法让它为我工作。

添加

.ignoreHttpErrors(true)
按照你的要求


请参阅API:

我使用的是Connection.Response,而不是Connection.Request,根据这一点:''.statusCode()应该返回状态代码是什么,我不确定如果我使用Connection.Request
Jsoup.connect(source.execute()是一个请求,您正在存储响应。请求导致http错误,并通过设置
Jsoup.connect(source).ignoreHttpErrors(true.execute()您告诉Jsoup在连接时忽略http错误,否则Jsoup会对http错误抛出异常。