在做有状态SessionBean 的时候,运行客户端后总是报如下异常:
Could not dereference object [Root exception is java.lang.reflect.UndeclaredThrowableException
。。。。。
。。。。。
Caused by: java.lang.ClassNotFoundException: [Lorg.jboss.aop.advice.Interceptor;
但我在客户端的lib目录下找到了这个类,jar包为:jboss-aop-jdk50-client.jar,我一看,上面写了个JDK5,的,而我用的是JDK1.6,我下了一个JDK1.5后再运行,可以啦,我估计是我的JBOSS版本太老的缘故,不兼容JDK1.6.
还要注意的是:有状态的SessionBean 的接口要继承java.io.Serializable包,所以你在EJB的服务端拷贝到客户端后最好不要再去动这个接口了,要不然IDE会重新对它进行编译,这样类的Serializable ID就会重新生成,就会和服务器端接口的Serializable ID 不同了,这样就会出现错误。