GWT应用程序的切分
来源:互联网 发布:vc socket多线程编程 编辑:程序博客网 时间:2024/06/01 16:51
有过在Eclipse下编写GWT应用程序经验的Programmer都知道,本质上GWT的Compiler是将客户端的代码编译成JS代码,默认是放在war文件夹下面。现在我们将客户端的代码与服务端的代码切分开来,分别放在两个不同的工程里面。
首先看一下GWT应用程序的结构:
其中最重要的文件是GWTPartition.gwt.xml:
其中元素module的属性rename-to的值很重要,上面的值是gwtpartition,从而编译产生的JS文件都放在war/gwtpartition下面,entry-point的class属性的值是程序的入口点,该类的onModuleLoad方法在程序启动的时候将会被执行。
同时也可以看到客户端的代码都在edu.sjtu.client下面,服务端的代码都在edu.sjtu.server下面,当然这个不是绝对的,只要经由GWTPartition引用(直接或者间接)的类都将会被编译成JS代码。
为了切分,我们首先新建一个Plug-in project,至于为什么选择Plug-in project,是想将这个分离出来的project做成一个war格式的bundle:
注意,这里将Project name加一个后缀.war是必要的,因为WAR格式的Bundle其识别机制是看工程名(Bundle的SymbolicName)是否有后缀war,同时选择Equinox。下一步:
这里勾掉Generate an activator…选项,因为不需要。下一步后,直接Finish。
生成的工程目录结构:
现在我们要开始切割了!
首先将edu.sjtu.server这个包移到GWTPartition.war下面,此时会产生编译错误,我们将GWTPartition加到GWTPartition.war的类路径上,同时把gwt-servlet.jar与gwt-dev-windows.jar也加到类路径上来。这是目前的工程目录结构:
同时也为了使得GWTPartition能运行起来,在它的Run Configuration里面把工程GWTPartition.war加到Classpath里面:
这个时候应用程序能够在Hosted Mode下运行,如图:
至此,已经切割完毕。
倘有疏漏之处,敬请指正。
Best Regards
胡靖飞
- GWT应用程序的切分
- GWT的.gwt.xml说明
- 使用GWT开发AJAX应用程序
- 使用GWT开发AJAX应用程序
- GWT开发AJAX应用程序教程
- 第一个GWT-EXT应用程序
- 窗口切分的静态切分
- EXT,GWT,GWT-EXT与EXT-GWT的区别
- ext-gwt与gwt-ext的区别
- 在GWT应用程序中,如何提高性能?
- GWT应用程序运行方式(Hosted | Web)Model
- 将Gwt应用程序部署到Tomcat中
- 数据库的垂直切分和水平切分
- 数据库的垂直切分和水平切分
- 数据库的垂直切分和水平切分
- 数据库的垂直切分和水平切分
- 数据库的垂直切分和水平切分
- 数据库的垂直切分和水平切分
- /n/r
- 如何获得对 System Volume Information 文件夹的访问
- Windows内存管理机制及C++内存分配实例(三):虚拟内存
- 解决ASP.NET Web Application超时时间已到.在操作完成之前超时时间已过或服务器未响应
- 怀念小培
- GWT应用程序的切分
- 静态网页中包含外部页面的四种方法
- Windows内存管理机制及C++内存分配实例(六):堆栈
- pku 3267 The Cow Lexicon(很经典的字符串DP)
- vi基本操作(4) -- 复制、粘贴、删除及范围操作
- Eclipse工程不编译的原因
- socket收发数据
- OA有发展前景吗?
- Windows内存管理机制及C++内存分配实例(五):堆