2017-04-02 39 views
1

在HtmlUnit中,如何在請求的頁面返回失敗狀態代碼(如4xx)時禁用拋出異常?我需要得到狀態碼,所以如果它拋出一個異常,我不能得到狀態碼。HtmlUnit禁用狀態代碼錯誤例外

Page page = null; 
try { 
    page = webClient.getPage(requestSettings); 
    System.out.println(page.getWebResponse().getStatusCode()); // it doesn't go to this line because exception is already thrown 
} catch (Exception e) { 
    System.out.println(page.getWebResponse().getStatusCode()); // it will fail because of NullPointerException 
    System.out.println(e); 
} 

以下方法似乎只適用於舊版本的HtmlUnit。我使用v2.25並且該方法不存在。

webClient.setThrowExceptionOnFailingStatusCode(false); 

回答

2

新的API現在有WebClientOptions

你應該使用:

webClient.getOptions().setThrowExceptionOnFailingStatusCode(false); 
相關問題