我有一個無狀態的會話bean和一個引發異常的方法(它從Exception中擴展)。如何捕獲會話bean的一個方法的異常
@Stateless
@LocalBean
public class MyBean {
...
public void myMethod() throws MyException {
...
}
}
但我無法捕捉到例外。
try {
myBean.myMethod
} catch (MyException e) {
...
}
這裏是堆棧: WARNING: StandardWrapperValve[MyServlet]: PWC1406: Servlet.service() for servlet MyServlet threw exception java.lang.IllegalAccessError: example/MyException at $Proxy327.myMethod(Unknown Source) at example.EJB31_Generated_MyBean_Intf_Bean_.myMethod(Unknown Source) at example.MyServlet.processRequest(MyServlet.java:36) at example.MyServlet.doGet(MyServlet.java:71) ...
我認爲,這是因爲在調用Bean方法經過代理。我怎樣才能捕捉到異常?或者應該避免在會話bean中拋出異常的方法? - 我希望不是。
你是什麼意思與「我無法趕上例外」?從Bean方法拋出MyException時會發生什麼? –
當你沒有發現異常時也是如此。我添加了堆棧的問題。 – ziri