我在 Websphere 中遇到了 MDB 拦截器的问题。我在 WAS 7.0.0.23 中为具有 ActivationSpec 而不是侦听器端口的 MDB 配置了 defaultInterceptor。我收到 ClassCastException。相同的配置适用于 SessionBean。
<assembly-descriptor><interceptor-binding>
<ejb-name>*</ejb-name>
<interceptor-class>com.LoggingInterceptor</interceptor-class>
</interceptor-binding></assembly-descriptor>
例外:LocalExceptio E CNTR0019E: EJB threw an unexpected (non-declared) exception during invocation of method "onMessage". Exception data: javax.ejb.EJBException: Injection failure; nested exception is: java.lang.IllegalArgumentException: java.lang.ClassCastException
http://www-01.ibm.com/support/docview.wss?uid=swg1PM53989 这个链接说这个问题只有在我们使用监听端口时才会发生——但我们使用的是激活规范。
感谢您的帮助。