2011-08-03 8 views
1

나는 무슨 일이 일어나고 있는지 이해하지 못합니까 ??? //www.mega : 예외를 잡을 수 없습니다 - Java with HtmlUnit?

public static void main(String[] args){ 

    WebClient wc = null; 
    HtmlPage hp = null; 
    ArrayList<Product> allProducts; 
    try{ 
     wc = new WebClient(BrowserVersion.FIREFOX_3_6); 
     hp = wc.getPage("http://www.mega.co.il/"); 
    }catch (Exception e) { 

    } 
    finally{ 
     allProducts = getProducts(wc, hp); 
     for (Product product : allProducts) { 
      System.out.println(product); 
     } 
    } 
} 

여전히 콘솔이 javax.net.ssl.SSLPeerUnverifiedException가 마력 = wc.getPage ("HTTP에 던져지는 보여줍니다

나는 다음과 같은 코드가 있습니다. 코일/"); 줄 :

Aug 3, 2011 10:45:19 PM com.gargoylesoftware.htmlunit.html.BaseFrame loadInnerPageIfPossible 
SEVERE: IOException when getting content for iframe: url=[http://www.mega.co.il/jsfweb/logins/rightLoginHPIframe.jsf] 
javax.net.ssl.SSLPeerUnverifiedException: peer not authenticated 
    at com.sun.net.ssl.internal.ssl.SSLSessionImpl.getPeerCertificates(Unknown Source) 
    at org.apache.http.conn.ssl.AbstractVerifier.verify(AbstractVerifier.java:128) 
    at org.apache.http.conn.ssl.SSLSocketFactory.connectSocket(SSLSocketFactory.java:339) 
    at org.apache.http.impl.conn.DefaultClientConnectionOperator.openConnection(DefaultClientConnectionOperator.java:123) 
    at org.apache.http.impl.conn.AbstractPoolEntry.open(AbstractPoolEntry.java:147) 
    at org.apache.http.impl.conn.AbstractPooledConnAdapter.open(AbstractPooledConnAdapter.java:108) 
    at org.apache.http.impl.client.DefaultRequestDirector.execute(DefaultRequestDirector.java:415) 
    at org.apache.http.impl.client.AbstractHttpClient.execute(AbstractHttpClient.java:641) 
    at org.apache.http.impl.client.AbstractHttpClient.execute(AbstractHttpClient.java:597) 
    at com.gargoylesoftware.htmlunit.HttpWebConnection.getResponse(HttpWebConnection.java:133) 
    at com.gargoylesoftware.htmlunit.WebClient.loadWebResponseFromWebConnection(WebClient.java:1405) 
    at com.gargoylesoftware.htmlunit.WebClient.loadWebResponseFromWebConnection(WebClient.java:1459) 
    at com.gargoylesoftware.htmlunit.WebClient.loadWebResponse(WebClient.java:1324) 
    at com.gargoylesoftware.htmlunit.WebClient.getPage(WebClient.java:303) 
    at com.gargoylesoftware.htmlunit.html.BaseFrame.loadInnerPageIfPossible(BaseFrame.java:141) 
    at com.gargoylesoftware.htmlunit.html.BaseFrame.loadInnerPage(BaseFrame.java:100) 
    at com.gargoylesoftware.htmlunit.html.HtmlPage.loadFrames(HtmlPage.java:1763) 
    at com.gargoylesoftware.htmlunit.html.HtmlPage.initialize(HtmlPage.java:204) 
    at com.gargoylesoftware.htmlunit.WebClient.loadWebResponseInto(WebClient.java:436) 
    at com.gargoylesoftware.htmlunit.WebClient.getPage(WebClient.java:307) 
    at com.gargoylesoftware.htmlunit.WebClient.getPage(WebClient.java:369) 
    at com.gargoylesoftware.htmlunit.WebClient.getPage(WebClient.java:354) 
    at DBSniffer.main(DBSniffer.java:107) 

누군가가 내게 무슨 일이 일어 났는지 설명 할 수 있습니까?

p.s
어쨌든 응용 프로그램이 실행됩니다!? 사전에

감사합니다, 댄

+0

보인다. catch 문에 무언가를 출력한다면, 그것을 볼 수 있을까요? –

+0

아니오 캐치 상태 – RCB

답변

4

인쇄 예외는 캐치 절에 전파되지 않습니다. 내부적으로 캐치되어 표준 오류로 인쇄됩니다.

경고를 표시하지 않으려면 API에 인쇄하지 말아야합니다.

는 다음과 같은 시도 : 예외가 내부적으로 잡은 것처럼

webClient.setThrowExceptionOnScriptError(false); 
webClient.setPrintContentOnFailingStatusCode(false); 
webClient.setThrowExceptionOnScriptError(false); 
+0

에 들어 가지 않지만 내부적으로 잡히면 이클립스에서이 예외를 잡아 내거나 더 이상 포기해야한다고 말하는 이유는 무엇입니까? 이것은 아무도 과정에서 그것을 붙잡는다는 것을 의미합니다! – RCB

+0

정확히 어떤 예외 사항을 포착해야한다고 말합니까? – aioobe

+0

이 예외를 잡을 필요가 없다고 미안하지만 감사합니다. – RCB

관련 문제