2014-05-14 70 views
0

有沒有搞清楚當有具有相同名稱的多個異常趕上哪個異常的一般方法是什麼?這發生在我身上,HttpException在我的構建路徑中有四個不同的部分。就我所見,堆棧跟蹤不會放棄包名稱。具有相同名稱的Java異常 - 它是哪一個?

[...] 
Caused by: HttpException: 404 File not found 
     at com.hp.hpl.jena.sparql.engine.http.HttpQuery.execCommon(HttpQuery.java:446) 
     at com.hp.hpl.jena.sparql.engine.http.HttpQuery.execGet(HttpQuery.java:289) 
     at com.hp.hpl.jena.sparql.engine.http.HttpQuery.exec(HttpQuery.java:240) 
     at com.hp.hpl.jena.sparql.engine.http.QueryEngineHTTP.execSelect(QueryEngineHTTP.java:302) 
[...] 
+0

我想你可以趕上'Exception',打印異常類的完全包限定名稱,然後重新拋出它,如果沒有更好的辦法。您也可以嘗試查看異常來自何處,並檢查文檔以查看該方法可能拋出什麼異常。 – user2357112

+0

我猜的異常可能是相同的,但有例外事項的消息,你不覺得在這種情況下,其顯示404,但消息表明,需要的是找不到的文件。 –

+0

@ pathfinder2104爲了提供額外的背景:這是不是一個真正的文件丟失,但這種情況發生零星的在線問題,需要我的Thread.Sleep了一段時間,所以我需要抓住它。 –

回答

1

查閱API或文檔。耶拿的Javadoc聲明HttpQuery.exec拋出QueryExceptionHTTP,其中有com.hp.hpl.jena.sparql.engine.http.QueryExceptionHTTP一個完全合格的名稱。

+0

這不是它,我得到了一個'HttpException',而不是'QueryExceptionHttp'。 –

+0

不,你有'QueryExceptionHTTP'其中,在['其方法toString'(https://github.com/apache/jena/blob/6bdbe8d3248f235cbee70046915d361e414b5a6b/jena-arq/src/main/java/com/hp/ hpl/jena/sparql/engine/http/QueryExceptionHTTP.java#L96)prepends''HttpException:「'。 – Joe

+0

如果這是真的,那真是令人困惑。我一直認爲在「由...引發」之後出現了異常類名稱...... –

相關問題