我有這樣的catch宣告:
} catch (Exception e) {
if (e instanceof AxisFault) {
LOGGER.info("AxisFault: " e);
if (((AxisFault) e).getFaultReason().contains("My error text")) {
throw new MyServiceException(HPDatastoreProviderImpl.class.toString(),
"My error text");
}
} else {
LOGGER.info("Failed: " e);
}
}
當它被擊中時,我可以看到它LOGGER.info("AxisFault: " e);似乎被忽略了。輸入if陳述句,我可以在線看到除錯器,throw new MyServiceException(HiPlusDatastoreProviderImpl.class.toString(), "My error text");但隨后它跳轉到LOGGER.info("Failed: " e);.
如果我洗掉LOGGER.info("AxisFault: " e);,if則永遠不會輸入。它直接跳到else. MyServiceException實際上似乎從未被拋出。我該如何解決這個問題?
更新
我將我的捕獲更新為:
} catch (Exception e) {
if (e.getMessage().contains("My error text")) {
throw new MyServiceException(HPDatastoreProviderImpl.class.toString(),
"My error text");
} else {
LOGGER.info("Failed: " e);
}
}
if沒有輸入,但我catch可以e={AxisFault@1914} "My error text在除錯器中看到。這就是我認為這是訪問錯誤的原因。我覺得我在這方面沒有進一步的進展。
uj5u.com熱心網友回復:
我的環境似乎有一些問題。清除瀏覽器快取后,重新啟動筆記本電腦,然后重建應用程式,它終于可以作業了。很抱歉浪費了大家的時間。
轉載請註明出處,本文鏈接:https://www.uj5u.com/qianduan/461189.html
