Tag: remoting

Maven WAR依赖 – 无法解析包?

我有战争依赖​​: my.package myservices 0.3 war 现在,它存在于我的本地存储库中,该类存在于WEB-INF/classes/my/package/myservices 。 但是当我去使用myservices时,我得到的包my.package不存在。 Intelli-J知道将myservices更改为my.package.myservices ,但尝试import似乎根本不起作用。 对于这种战争依赖,我需要做些什么特别的事吗?

远程病例中的Lazy / Eager加载策略(JPA)

我遇到了像大多数尝试使用ORM进行远程处理的人一样的LazyLoadingexception。 在大多数情况下,切换到急切的提取解决了问题(延迟加载/非primefaces查询/线程安全/ n + 1问题……)。 但是如果你正在处理一个非常大的对象图,那么渴望获取也会有缺点。 在大多数用例中不需要加载整个对象图。 加载需要的更多数据(或从db加载它们并提取所需的子集)感觉很糟糕。 那么有什么替代方法可以解决这类问题(在运行时)? 我见过: 将数据访问依赖项注入域对象,并让对象决定加载延迟或急切: 感觉不好 ! 域层应独立于任何服务。 域注入也是一项昂贵的操作。 域应该是无知的数据访问,应该使用或不使用数据访问。 除了需要更多数据的用例之外,获取所有惰性内容:看起来效果更好但这种方式会强制许多客户端=>服务器/数据库往返。 懒惰字段的初始化也会遭受痛苦(尝试使用JPA)。 这种方式不具有通用性 ,并且受到上述相同的惰性限制。 在Lazy类中封装持久性:更复杂,没有与ORM互操作的最佳实践。 膨胀的服务层(这么多“手写”代码感觉很糟糕 )。 对每个用例使用完整的预测:我们将最终使用SQL并放弃ORM的好处。 DTO /虚拟代理层强制执行更多复杂性并使代码更难维护(Wormhole antipattern >> Bloat)。 我想了很多其他的方式。 也许通用投影white./black listning是一个解决方案。 Idea(黑名单):使用提取操作的边界定义类名列表。 如果属性匹配并且它是惰性的,则删除惰性(CGLIB)代理并使用null填充该值。 否则,简单地防止获取(并将值保留为null)。 因此,我们可以在DAO中设置明确的界限。 示例: ProductDao.findByName(“Soap”,Boundaries.BLACKLIST,”Category, Discount”)最后两个参数也可以绑定到Boundaries对象中。 Idea(白名单):与黑名单一样,但您必须声明属性应加载到白名单中。 你怎么看待这样的解决方案? (可能的问题,限制,优点……)我应该如何在java中编写这个? 也许通过AOP匹配DAO方法(因为我能够修改cglib代理行为)?

Java:没有安全管理器:RMI类加载器被禁用

嗨我有RMI应用程序,现在我尝试从我的客户端调用服务器上的一些方法。 我有以下代码: public static void main(final String[] args) { try { //Setting the security manager System.setSecurityManager(new RMISecurityManager()); IndicatorsService server = (IndicatorsService) Naming .lookup(“rmi://localhost/” + IndicatorsService.SERVICE_NAME); DataProvider provider = new OHLCProvider(server); server.registerOHLCProvider(provider); } catch (MalformedURLException e) { e.printStackTrace(); } catch (RemoteException e) { e.printStackTrace(); } catch (NotBoundException e) { e.printStackTrace(); } } server是否正确加载,但是当我尝试调用server.registerOHLCProvider(provider); 我收到这些错误: java.rmi.ServerException: RemoteException […]