我目前正在重构现有的代码库 (EJB),以删除在 EJB 中捕获 Throwable 的所有块。
try {
... do some business logic
} catch(Throwable t){
... log and swallow ... :-(
}
我想/需要用适当的文档来说服我周围的人“捕捉 Throwable”对于 EJB 来说是不行的(我们对此进行了很多讨论)。Weblogic 将处理所有“错误”情况,并可能使 EJB 无效并将新的(工作的)EJB 放入池中。捕获 Throwable 会破坏 weblogic 提供的所有这些安全网,并且捕获 Throwable 无论如何都是不好的做法(但这里的人们不情愿并到处使用“Throwable”锤子)。
有没有人能指出一些解释这种行为的在线文档(对于 weblogic、jboss 等)。我通过谷歌搜索并查看了 weblogic 文档,但找不到任何东西,只是通用的 java 文档。