我有一个web应用程序,它在GUI (JSF 2.0,Orchestra,Spring)和服务(Spring,JPA,Hibernate,...)中被指定为独立的。项目。由于web服务器和数据库服务器之间的网络问题,我需要将应用程序完全拆分,在层之间,并将它们部署在两个不同的tomcats上,用于靠近数据库服务器的服务部分。我已经用Eclipse WTP CXF插件生成了一个webservice和一个webservice-client。
我的问题是:对于客户端,它生成域模型类的副本,所以我不能在我的gui项目中直接使用它们,并且需要在web服务客户端和gui层之间引入一个转换层。这很麻烦,而且容易出错。
是否有可能使用共享域模型(模型类位于单独的项目中,- service和gui - project都依赖于此)生成web服务客户端(从现有的web服务模块和wsdl中)?
拼命寻找解决方案,因为部署截止日期已经临近……
发布于 2011-04-20 15:28:55
当您有两个物理层时,生成域模型类(DTO)的副本是一个很好的实践:您的Hibernate POJO在被发送到另一个物理层之前需要被解除代理。也许你可以使用Dozer来做,以避免花费太多的时间。
如果您需要性能,也许您应该使用RMI而不是Web服务。
如果您已经下定决心要在表示层中使用域对象,那么您应该看看Gilead (以前称为Hibernate4GWT)。
这里详细描述了纯DTO、带推土机的DTO和Gilead的使用:http://code.google.com/intl/fr/webtoolkit/articles/using_gwt_with_hibernate.html
https://stackoverflow.com/questions/5726812
复制相似问题