我需要从另一个具有相同 glassfish(3.1 最终版本)的 Web 应用程序调用远程无状态 EJB,它返回实体 Bean(JPA 2/Eclipselink)。我通过依赖注入(@EJB)在 Web 应用程序中获取 ejb 引用,但实体变为空。我用谷歌搜索,发现它可能是可序列化的问题。我在某个地方找到了这个
TopLink 要么在加载时修改实体类(“编织”它们),要么在运行时替换集合访问,以便能够检测延迟访问或修改的关系(如果没有这个或子类化或在运行时使用代理,就无法支持延迟加载)。这给我们带来了非常重要的一点:您不应该使用反射来访问实体,而只能通过其业务方法。当编织实体在服务器上序列化并在没有编织其相应实体的客户端上反序列化时,serialVersionUID 将不匹配,因为值的计算包括类字段和方法。
那么我需要在我的应用程序上进行 DTO 转换吗???