最近都在整这个该死的EJB3。刚学,不熟悉,郁闷到我了。特别是他的打包和JNDI。昨天一直在尝试远程调用,书上或网上的例子都简单的要死,试着都是成功,可到了一个又一个模块的项目中,就发现没那么轻松了。
第一个就是报连接不上指定地址或是NameNotFoundException,后者的可能性很多,当然无法连接url当然也就找不到命名了。一般来说配置正确、地址正确没理由连不上server。整整差了1个小时,无意间把地址中的自己计算机的IP地址改成了localhost,一下子就OK了。郁闷中的郁闷,自己电脑的防火墙阻止了连接。 泪奔
第二个就是javax.naming.CommunicationException [Root exception is java.lang.ClassNotFoundException: XXXX.XXX.XXX.XXXX(no security manager: RMI class loader disabled)] 网上找了好多资料都说是远程和本地的jar版本不对。正不明白,既然都是远程调用了,本地还要个干什么。当时把本地和远程的版本都整一样了,还是报这个异常。查了半天,原来是本地classpath下找不到所要调用的.class文件。唉,jar包没放到lib文件夹下。
记下来,免得才出错。