将大型GWT应用程序拆分为多个模块

时间:2010-10-13 06:52:09

标签: java google-app-engine jsp gwt

我有一个用GWT和GAE编写的应用程序,其中每个受支持的城市都有自己的应用程序。显然,这不是管理地图的最佳方式,因此我想将它们全部合并到一个应用程序中。目前我的应用位于网址sub1.myapp.comsub2.myapp.comsub3.myapp.com等,我希望它们位于myapp.com/sub1myapp.com/sub2等。所有支持的城市共享公共代码,因此我将把所有代码放在一个模块中,并为每个独特的代码块设置不同的模块。这是正确的方式吗?不同模块将如何相互作用?

另外,我目前在sub1.myapp.com/listofsomesort有JSP,我想将它们移到myapp.com/sub1/listofsomesort。有没有一种简单的方法来实现这一目标?

2 个答案:

答案 0 :(得分:3)

通过为每个旧应用程序创建一个带有EntryPoint的模块,在同一个应用程序中。每个模块都有一个“欢迎页面”,您可以将其放在不同的目录中。所有共享代码都可以进入另一个模块。共享代码可以由其他模块中的inherit设置使用。

我遇到的唯一问题是,当您部署到GAE时,所有模块都应该有一个入口点,还有库模块。我通过向它们添加一个虚拟EntryPoint来解决它,它什么也没做,但仍然在寻找更好的解决方案。请在How to deploy GWT Project containing GWT modules without entry points with Eclipse GAE plugin?查看我的问题。

答案 1 :(得分:0)

这似乎是Code Splitting :)的工作。但是,可能需要对代码结构进行一些更改 - 取决于类的紧密耦合程度。一个compile report应该告诉你你的代码是否很好地分裂,或者如果不是,那么连接在哪里。