2011-08-12 167 views
1

我目前正在制定一个Web应用程序的规范,它包含一个管理界面和一组将由分享者网站使用的Web服务。GWT和Spring集成

我一直在玩GWT,它看起来非常适合管理界面,但同时我也很喜欢使用Spring框架来生成基于REST的web应用程序API。

我的计划是创建两个独立的Web应用程序,一个用于管理员,另一个用于Web服务。一个设置为春天,另一个设置GWT应用程序。很显然,我希望分享这两个应用程序之间的领域模型,我猜这应该是相当微不足道的完成?我只是为了保持简单,在GWT客户端项目中实现完整的域模型,并简单地设置Web服务的源路径以包含来自GWT项目中相关文件夹的域模型。

现在,我的问题。我确信有人在这里做了类似的事情,在出发之前我应该​​注意哪些潜在的陷阱?

我为这个项目留出了相当多的时间,但是我从来没有真正使用GWT来处理任何“严重”的事情,我只是为了个人兴趣而玩弄它,而且我在Swing和Android方面都很有经验用户界面开发,所以我相信我可以使用它(非常简单)的用户界面。该方程中的“未知”是共享域模型。我无法想象这是一个问题,因为域模型将只是POJO的(使用JDBC,但同样,我不能想象这是一个问题)。

此外,是否有更好的方法来整合GWT和Spring,而不是简单地分离Web应用程序和共享他们的领域模型?

+0

如果我要实现它,我会在一个应用程序中使用Google App Engine和GWT。 REST也可以从GAE中暴露出来。做pojo,你也可以使用Spring Roo加快开发 – Wei

+0

嗨:)感谢您的反馈,我们不会在Google App Engine上部署,但它需要访问我们的Oracle服务器。它最初将部署在Tomcat上。 – JustDanyul

回答

2

为什么你想创建两个单独的应用程序? 创建一个,具有明显分离的应用程序服务层。将这些服务通过标准的Spring注解公开为webservices,并通过GWT requestfactory公开对这些服务的访问(不幸的是,据我所知,当前requestfactory对REST请求不太好,主要是因为他们的序列化方式)。这种方法只对您的应用程序导入一个入口(外观),并允许以两种不同的方式使用此外观。

我已经在几个GWT + Spring项目上工作过 - 对于标准案例,开发速度非常快,框架集成得非常好。但是,如果您想要进行一些自定义,例如基于弹簧安全性引入安全性 - 您需要做一些攻击,比如覆盖运输类。当然需要一些时间,但结果非常好。

我肯定会推荐看一下Spring ROO示例应用程序(据我所知,roo是由谷歌部分开发的)。