`

gwt.xml

 
阅读更多

TMS.gwt.xml

<module>
	<inherits name='com.vtradex.thorn.ApplicationWindow'/>
	<inherits name='com.vtradex.repc.ReportCenter'/>
	<inherits name='com.vtradex.rule.RuleCenter'/>
	<entry-point class='com.vtradex.tms.client.TMS'/>
</module>

 

 

========================================

如何定义个XML模块文件

 

模块是被定义于名为 gwt.xml.ModulName 的文件中。这个文件应改被放在你的工程的根目录。

如果你的工程使用的GWT标准工程文件夹的结构,那么你的配置文件应该向下面那样简单。

 

<module>

    <inherits name="com.google.gwt.user.User" />

    <entry-point class="com.example.cal.client.CalendarApp" />

</module>

 

加载模块

 

模块配置的XML文件应该在JAVA的类加载路径里面。模块总是通过他们的逻辑名被引用。

模块的逻辑名是这样的:包名1.包名2.模块名。逻辑名并不用反映实际的文件系统路径和文件扩展名。

如下,假如一个模块的XML文件:

~/src/com/example/cal/Calendar.gwt.xml

那么对应的逻辑名可以是:

com.example.cal.Calendar

 

重命名模块

 

模块配置文件的<module>元素有一个可选的属性 rename-to 。

这个属性可以让JAVA -> JavaScript的编译器把对应模组按照重命名之后的名字来处理。

重命名一个模块可以带来如下好处:

可以使用一个不反应实际包结构的短名

to create a "working module" to speed up development time by restricting the number of 

 permutations

 

com.foo.WorkingModule.gwt.xml:

 

<module rename-to="com.foo.MyModule">

 

<inherits name="com.foo.MyModule" />

 

<set-property name="user.agent" value="ie6" />

 

<set-property name="locale" value="default" />

 

</module>

 

对应如上的配置文件,当WorkingModule.gwt.xml被编译的时候,默认情况下将仅仅产生

 一个用于ie6的版本。

这种方式可以帮助你提高开发时的编译速度。这时编译器的输出将是以重名后的包名产生的。

但是,在主机(Host)模式下,需要使用实际的XML文件名对应的模块名,即物理名。总之

主机模式下,GWT(谷歌网站工具)只会按照物理名去查找对应的模块。

 

使用多个模块

 

大多数情况下,你可能会打算创建一个可以在其他GWT工程中重用的模块。

创建这类模块的时候并不意味着该模块必须要定义一个入口(entryPoint)。

实际上, GALGWT(Google API Library for Google Web Toolkit )中

Gears对GWT的绑定中就有这种情况。你可以在jar包中的

 gwt-google-apis/com/google/gwt/gears/ Gears.gwt.xml 

中看到,那里并没有定义入口。所以任何想要在GWT工程中使用Gears for GWT的模块都

需要在其模块配置文件中继承Gears.gwt.xml module。

例如: 一个名为 Foo 的模块项使用GALGWT, 则其模块配置文件中应该有一个<inherits> 元素。

<module>

...

              <inherits name="com.google.gwt.gears.Gears" />     

在同一个超文本文件中加载多个模块

如果你的应用程序需要多个GWT模块,

创建一个顶层的模块的XML配置文件,在其中包含所有你打算包含的模块。然后编译顶层模块,

进而只产生单个的js 输出结果。

 

重载一个实现

 

<super-source>标签告诉编译器将一个目录作为源码的根目录。

当你想在一个GWT工程中重用一个java的api,而原先的源码路径又没法编译这个类的时候

这个标签就有用武之地了.

这个功能多的时候用来模拟一个尚未被GWT实现的JRE的功能。

 

请看下面这个例子,

 

假设你打算实现JRE下面java.util下面的UUID 类, 你的工程的模块是:

 

com/example/myproject/MyProject.gwt.xml.

 

那么你可以把UUID 类放到      

com/example/myproject/jre/java/util/UUID.java.

然后在MyProject.gwt.xml 中加入<super-source path="jre" />

这就告诉编译器将com/example/myproject/jre 加到源码路径下面,

 但是去掉,并且包括jre,之前的部分。

这样做的实际效果是, com/google/myproject/gwt/jre/java/util/UUID.java 

 将会被视作java/util/UUID.java 。这样实际上你为GWT的jre增加了一个类的实现。

基于GWT的工程内在的使用了这种技术来实现对JRE的模拟。必须指出是,

以这种对JRE类进行的重载实际上并不能被用于主机(host)模式。主机模式中,

本地的jre总是替代了源码编译而来的类。

<super-source> 标签支持基于模式的过滤,这个特性使得你可以在更细的粒度上

 控制编译是那个资源被复制到输出目录。

 

 

XML配置文件参考

这一节列出了模块配置文件中最常用的元素。

 

<inherits name="logical-module-name" /> : 

        从指定的模块继承所有的设置。这样做实际上是将所有的设置都复制的当前的这个文件。

可以继承的模块数量不限。

<entry-point class="classname" /> :

        定义一个入口类。可以定义任意数量的入口,当然被继承过来的入口同样有效。

同一个有效域内的所有的入口都被编译到同一个代码库。

并且,被按照出现在配置文件中的顺序依次的被各自的onModuleLoad()方法加载。

<source path="path" /> : 

         每个<source>标签都通过合并其所指定的路径到模块配置XML文件所指定的包中去的方法, 

加入了一个包到编译器的源码路径内。所有出现在包中的java文件或者其子包都会被编译。

同样,基于模式匹配的过滤也是支持的,以便于为你提供对编译输出,主要是对那些资源将被复制

编译输出目录,提供细粒度的控制。如果整个模块配置文件都没有<source>标签被定义,

那么client包将被隐式的加入到源码路径中去,这个动作等同于<source path = "client">.

这个默认设置可以帮助大家使用google推荐的标准工程文件夹的组织方式。

 

<public path = "path" /> 

          这个标签用于将一个包加入到public path 路径下面。所有出现于public path路径下面的

资源将被所有的客户端代码访问。和source一样, <public> 也有一个默认的指向,模块根目录,

就是模块配置文件所在的目录,下的public 文件夹。

<servlet path="url-path" class="classname" /> :

          为了便于RPC测试,这个标签定义了一个servlet并将之绑定到一个URL,但是请注意,

  和在web.xml中定义不同, 

 1。此处要求URL的末尾必须是一个目录而不是”/”。在客户端代码中,你可以指定一个调用位置,

 用ServiceDefTarget.setServiceEntryPoint(String).这里对加载的servlet的数量没有限制。

 2。这个地方的定义只对GWT的内置服务器的服务器端的调试起作用。

 

<script src ="js-url" /> : 

          这种用模块的主页中引入js文件或者文件夹,这个效果等同于你在HTML 页面中使用 script 。

<stylesheet src="css-url" /> :

          这种用模块的主页中引入css文件或者文件夹,这个效果等同于你在HTML 页面中使用 script 。

<extend-property name="client-property-name" values="comma-separated-values" /> :

          这个是用来定义本地化参数的,也可以用来定义其他的一些属性

分享到:
评论

相关推荐

    配置GWT.ui.xml代码提示

    在开发Google Web Toolkit (GWT) 应用程序时,我们经常会遇到在Eclipse IDE中编辑`.ui.xml`文件时出现性能问题,如卡死、响应慢等。这些问题可能极大地影响开发效率。本文将详细解释如何配置GWT的`.ui.xml`代码提示...

    org.liveSense.sample.gwt.notes-1.0.5.zip

    3. **GWT 配置**:可能包含 `.gwt.xml` 文件,定义模块和编译设置。 4. **测试代码**:JUnit 或其他测试框架的测试类,用于验证功能正确性。 5. **资源文件**:如 HTML、CSS 和 JavaScript 文件,构成用户界面。 6. ...

    org.jresearch.commons.gwt.utils.shared-1.0.45.zip

    标题 "org.jresearch.commons.gwt.utils.shared-1.0.45.zip" 提供的信息表明,这是一个与Java开发相关的开源项目,具体来说是`org.jresearch`组织下的一个 Commons GWT (Google Web Toolkit) 工具集。GWT 是一个用于...

    Accelerated.GWT.Building.Enterprise.Google.Web.Toolkit.Applications

    9. **移动设备支持**:讨论GWT的移动设备适应性,包括使用GWT的Mobile.gwt.xml配置文件和优化移动体验的方法。 10. **最佳实践与案例研究**:提供实际项目开发中的最佳实践,通过具体的案例分析帮助读者理解如何在...

    java源码:Spring4GWT.zip

    4. **GWT Module**:GWT项目的配置文件(如`.gwt.xml`),用于设置模块的属性、导入依赖、定义服务等。 5. **Serialization Policy**:GWT生成的序列化策略文件,用于确保客户端和服务器之间传输的对象可以被正确地...

    GWT学习之好的例子

    3. 创建Module:在src目录中创建一个包(如org.leo),然后创建一个名为GwtModule.gwt.xml的文件,内容如下:&lt;module&gt;&lt;inherits name="org.google.gwt.user.User"/&gt;&lt;entry-point class="org.leo.client.MyEntryPoint...

    入门GWT.doc入门GWT.doc

    Ajax,即Asynchronous JavaScript and XML,是构建现代Web应用的关键技术之一。它利用JavaScript的XmlHttpRequest对象实现与服务器的异步通信,从而在不刷新整个页面的情况下更新内容,提升用户体验。然而,Ajax的...

    ActionScript flashbang 游戏框架的 Java 端口,用于 PlayN 项目

    src/main/java/flashbang.gwt.xml src/main/java/flashbang/AppMode.java src/main/java/flashbang/Flashbang.java src/main/java/flashbang/FlashbangApp.java src/main/java/flashbang/GameObject.java src/main/...

    部署一个简单GWT应用到Google App Engine

    `Gwt.gwt.xml` 文件是GWT模块配置文件,包含了应用的元数据和依赖信息。 **Google App Engine (GAE)** 是一个基于云的平台,允许开发者托管和运行Web应用。GAE提供了服务器、数据库、存储和其他基础设施,开发者...

    GWT入门教程

    在`module.gwt.xml`文件中,你可以指定应用的入口点类、样式表、本地化资源以及所依赖的其他GWT模块。 ### 5. 异步编程与数据绑定 **5.1 Asynchronous Programming** GWT的异步编程模型允许开发者在不阻塞用户界面...

    gwt-servlet-2.3.0.jar

    1. **GWT模块系统**:GWT应用是基于模块化的,每个模块对应一个`.gwt.xml`配置文件,定义了类路径、依赖和编译设置。`gwt-servlet-2.3.0.jar`包含了处理这些模块请求的逻辑。 2. **RPC通信机制**:GWT使用Remote ...

    gwt调试环境配置.doc

    4. **配置.gwt.xml文件**:在项目的src目录下,编辑`module.gwt.xml`文件,设置项目使用的GWT版本和其他属性,如本地化设置、主题、编译目标等。 5. **设置超级DevMode**:GWT的调试模式称为Super Dev Mode,它允许...

    gwt-2.5.1.zip

    接着,创建一个GWT模块(.gwt.xml文件),在其中定义应用的设置,包括使用的GWT版本、主题、本地化等。 5. **编写GWT代码**: 开始编写你的GWT应用。在Java源代码中,创建用户界面元素,如 panels、widgets,并...

    org.jresearch.commons.gwt.emu-1.0.74.zip

    标题中的"org.jresearch.commons.gwt.emu-1.0.74.zip"是一个软件库的压缩包,它属于org.jresearch.commons.gwt项目,版本号为1.0.74。这个库很可能包含了一些用于Java GWT(Google Web Toolkit)开发的emu(模拟器)...

    游戏花园,用于托管用 Java 编写的简单多人游戏的框架

    游戏花园,用于托管用 Java 编写的...client/src/main/java/com/threerings/gardens/GardensClient.gwt.xml client/src/main/java/com/threerings/gardens/client/ClientContext.java client/src/main/java/com/threer

    Gwt 项目Demo

    - `myGwtProject.gwt.xml`:GWT模块配置文件,定义了项目使用的GWT库、本地化设置、主题等。 3. **Java类**: - `EntryPoint`类:GWT应用的起点,继承自`com.google.gwt.core.client.EntryPoint`,在应用加载时...

    GWT使用大全

    3. 配置.gwt.xml:在项目的根目录下,有一个`module.gwt.xml`文件,这是GWT模块配置文件,可以在这里设置项目使用的GWT版本、导入依赖库、声明本地服务等。 4. 设置浏览器支持:在`module.gwt.xml`中,可以指定项目...

    GWT学习笔记,个人学习心得

    3. `Sumator.gwt.xml`:GWT模块描述文件,用于配置项目的各个方面,如引入其他模块、设置入口点、定义RPC服务路径等。 4. `server`目录:存放服务器端代码,如实现RPC服务的Servlet。 【GWT的RPC机制】 GWT的Remote...

Global site tag (gtag.js) - Google Analytics