gpt4 book ai didi

java - EJB:为什么在 JNDI 查找中会出现此错误?

转载 作者:行者123 更新时间:2023-11-30 11:50:29 24 4
gpt4 key购买 nike

InitialContext ctx = new InitialContext();
StatelessInterogareRemote beanStatelessRemote = (StatelessInterogareRemote) ctx
.lookup("java:global/ShopEAP/ShopEJB/StatelessInterogare!shop.StatelessInterogareRemote");
StatefulShopCartLocal beanStateful = (StatefulShopCartLocal) ctx
.lookup("java:global/ShopEAP/ShopEJB/StatefulShopCart!shop.StatefulShopCartLocal");

当我运行应用程序时,第二次查找后出现错误:

[[[ Error ]]]: Lookup failed for 'java:global/ShopEAP/ShopEJB/StatelessInterogare' in SerialContext 
INFO: [Ljava.lang.StackTraceElement;@89708c
WARNING: "IOP00100006: (BAD_PARAM) Class com.sun.ejb.containers.EJBLocalObjectInvocationHandlerDelegate is not Serializable"
org.omg.CORBA.BAD_PARAM: vmcid: OMG minor code: 6 completed: Maybe
at com.sun.corba.ee.impl.logging.OMGSystemException.notSerializable(OMGSystemException.java:990)
at com.sun.corba.ee.impl.logging.OMGSystemException.notSerializable(OMGSystemException.java:1005)
at com.sun.corba.ee.impl.orbutil.ORBUtility.throwNotSerializableForCorba(ORBUtility.java:753)
...

最佳答案

好吧,它看起来像:

  1. 实现 StatelessInterogareRemote 的类不可序列化或
  2. StatelessInterogareRemote 接口(interface)中的某些方法具有(递归)不可序列化的参数或返回类型

明确一点:serializable 对象是实现Serializable 接口(interface)的对象;通过递归,我的意思是说对象、它的属性、它的属性的属性等等——它们都必须是可序列化的。

既然您指出 EJB 是无状态的,那么应该清楚它不能有属性,但以防万一:EJB 中的所有属性也必须是可序列化的,或者是 transient 的,以防它们不能被序列化连载。

关于java - EJB:为什么在 JNDI 查找中会出现此错误?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7961182/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com