`
xplq
  • 浏览: 88649 次
  • 性别: Icon_minigender_1
  • 来自: 成都
社区版块
存档分类
最新评论

gxt:ext-gwt入门

阅读更多

从今天开始研究gxt (我也刚接触,大家一起提高,学习)也就是mygwt加入extjs阵营以后的新版本(gxt1.2),关于gxt(ext gwt)与gwt-ext的区别,请自行查阅相关资料.

再次说明:不是 研究gwt-ext,而是,Ext GWT(原名MyGWT)是一个开源的Google Web Toolkit的扩展,它帮助开发人员非常容易地创建AJAX Web应用。Ext GWT是100%基于GWT的,不需要任何额外的JavaScript或其他第三方jar。Ext GWT也是Ext JS的一个子项目。

Ext GWT: Rich Internet Application Framework for GWT:官方网站:http://extjs.com/products/gxt/,里面有很多丰富的例子和api文档。

一、构建eclispe开发环境

1、前期准备

(1)开发工具:

     j2se6,正确安装及配置。

     Eclipse Ganymede:eclipse V3.4,下载地址为:http://www.eclipse.org/ganymede/;解压直接使用。

(2)相关jar包:

     gwt-windows-1.5.3:下载地址为:http://code.google.com/webtoolkit/versions.html;解压好待使用,本人直接解压到D盘,呆会要用到。

     gxt1.2:下载地址:http://extjs.com/products/gxt/;解压好待使用。

(3)GWT插件:Eclipse Plugins for GWT:cypal.studio.for.gwt-1.0,下载地址为:http://code.google.com/p/cypal-studio/。解压后直接 Copy Eclipse安装目录/plugins下即可。

2、配置 GWT Home目录

打开 Eclipse Window—Preferences—Cypal Studio 选择 Gwt的目录(即gwt-windows-1.5.3目录)。



 

如果没有出现Cypal Studio ,说明插件没有安装成功。必须放在正确的位置。同时,GWT Home,一定要选择在gwt-windows-1.5.3解压目录下,否则待建立module时jar找不到,同时有可能带来其他问题。呵呵。我就有过莫名其妙的错误。

二、编写简单实例

1、新建一个动态 web项目, File—New—Other—Web—Dynamic Web Project,在 Configurations中选择 Cypal Studio for GWT,其他的默认即可。 注意,Target Runtime 一定要为<None>,不要选择服务器,如果选择了服务器,下一步运行的时候会出现异常,还得手动删除它,所以不要选择服务器,下一篇将介绍在tomcate6上运行配置。这里运行是在GWT自己的环境下运行。



 

2、创建 Module模型

项目上点击右键 New—Other—Cypal Studio—Module,输入包名 org.gxt,类名 Test


 

 

 

创建成功后,正确工程为:



 

3.在Test.java的onModuleLoad() 方法中加入Window.alert("success");

 

package org.gxt.client;

import com.google.gwt.core.client.EntryPoint;
import com.google.gwt.user.client.Window;

public class Test implements EntryPoint {
	public void onModuleLoad() {
		Window.alert("success");
	}
}

 

三、配置运行环境

选择 Run—Run Configurations—Gwt Hosted Mode Application,选择 New,新建一个运行实例new_gxt, Project中选择 Gxt Module会自动选择所要运行的模型类Test.java。



 

点击Run,自动启动GWT运行环境:



 

ok,运行成功。

四、编写ext gwt 的window测试范例。

以上还没有用到gxt1.2文件夹中的东西,现在该用到它了。把WebContent文件夹删除掉,新建了一个lib文件夹,复制gxt.jar到lib下。



 

把lib/gxt.jar添加到Java Build Path里面



 

在Test.gwt.xml中加入(继承GXT):

<inherits name='com.extjs.gxt.ui.GXT'/>

在Test.html中加入(默认样式表):

 <link rel="stylesheet" type="text/css" href="css/ext-all.css" />

ok,现在在Test.java中onModuleLoad()方法注释掉Window.alert("success");同时为避免出现重复,删除掉已经导入的com.google.gwt.user.client.Window包;添加gxt的com.extjs.gxt.ui.client.widget.Window;完整代码如下:

 

package org.gxt.client;

import com.google.gwt.core.client.EntryPoint;
import com.google.gwt.user.client.ui.RootPanel;
import com.extjs.gxt.ui.client.widget.Window;


public class Test implements EntryPoint {

	public void onModuleLoad() {
		Window window=new Window();//相当于html的div
		window.setSize(500,300);//设置高度和宽度
		window.setHeading("success");//设置标题
		window.setPlain(true);//设置透明
		window.show();
		RootPanel.get().add(window);
		
		
	}

}

  

再次运行New_Gxt(已经建立的运行环境), 想要的结果出现了,呵呵。



 

 

结果:

 

 

 

 

正确出现窗体,呵呵,成功。下一篇在tomcate6下配置,不用gwt自带的运行环境。

  • Gxt.war (583.9 KB)
  • 下载次数: 1272
  • 大小: 62.4 KB
  • 大小: 62.1 KB
  • 大小: 35.5 KB
  • 大小: 41.1 KB
  • 大小: 14.5 KB
  • 大小: 62.5 KB
  • 大小: 53.3 KB
  • 大小: 12.8 KB
  • 大小: 68.5 KB
  • 大小: 52.4 KB
  • 大小: 42.6 KB
分享到:
评论
19 楼 weiliuhong1 2011-11-08  
我在使用gxt的时候,想把它提供的按钮和控件的提示全部转换为中文,请问有办法吗?
18 楼 linsongbin1 2009-08-11  
好文章,学习了。
17 楼 micallz 2009-05-20  
Nemesis 写道
好像ext和ext-gwt是收费的吧,如果你开发的项目不是开源的话是要购买license的

多谢你的回复!
16 楼 Nemesis 2009-05-20  
好像ext和ext-gwt是收费的吧,如果你开发的项目不是开源的话是要购买license的
15 楼 dukai1008 2009-05-13  
myeclipse下怎么用啊?能说说嘛?
14 楼 micallz 2009-05-11  
问一下啊,这个gxt-1.2是收费的吗?如果收费,按什么标准收啊.

13 楼 tangerll 2009-04-29  
fanfree 写道
Google Web Toolkit hosted Mode 找不到 ext-all.css
"404 -  GET /css/ext-all.css(127.0.0.1) 1401 bytes "
请问是什么问题引起的?


这个应该是你的路径引用的有问题,我是把css文件夹与src文件夹放在同一目录下了,引用的时候直接写 <link rel="stylesheet" type="text/css" href="css/ext-all.css" />即可
12 楼 tangerll 2009-04-29  
wcc137 写道
我用myeclipse6.5.1,jdk1.5,gwt-windows-1.5.2,gxt-1.2,cypal.studio.for.gwt-1.0,还需要什么软件么?我在建立项目时没有File—New—Other—Web—Dynamic Web Project ,是怎么回事?我还有什么错误吗?


file->new->other 然后把下面show all wizard选项勾中即可
11 楼 fanfree 2009-04-21  
Google Web Toolkit hosted Mode 找不到 ext-all.css
"404 -  GET /css/ext-all.css(127.0.0.1) 1401 bytes "
请问是什么问题引起的?
10 楼 eyes1842 2009-03-11  
qdj21 写道
gxt在struts2中怎么使用??


GWT或是GXT与struts结合使用是不合理的,本身gwt是基于事件驱动的模型,类似java swing的写法。gxt有自己的mvc(其实就是在gxt客户端自己的mvc)。在事件驱动的编程模型理,可以不要mvc,事件激发的时候直接跟后台打交道。这样倒反比较简单。如果项目比较大,可以采用gxt的mvc,有益于维护。

其实gwt/gxt 是前台展示层的,一般我们做项目,struts也是作为前台展示层使用,很少人把业务逻辑写在struts中,一般是在spring中,所以,gwt/gxt 和struts是平等的层次,它们是相互替代的,一般不做结合使用。

要是想结合struts的话,可以考虑extjs。
9 楼 may_cauc 2009-01-03  
<p>发现GXT的model的写法:<br/></p>
<pre name='code' class='java'>  public Stock(String name, double open, double change, double pctChange, Date date, String industry) {
    set("name", name);
    set("open", open);
    set("change", change);
    set("percentChange", pctChange);
    set("date", date);
    set("industry", industry);
  }

  public String getIndustry() {
    return get("industry");
  }

  public void setIndustry(String industry) {
    set("industry", industry);
  }</pre>
<p> </p>
<p><br/>Stock类也要继承:import com.extjs.gxt.ui.client.data.BaseModel;<br/><br/>不能直接采用普通的getter setter 的model吗?反正我测试取不到具体的属性值。<br/><br/>如果不能和普通的model兼容,岂不是相当麻烦</p>
<p> </p>
8 楼 qdj21 2008-12-30  
gxt在struts2中怎么使用??
7 楼 newchengse 2008-12-17  
谢谢楼主回复。
    我在企业里工作,由于人手不足,没有专门的美工一职。平时搞页面的时候都是我们这些程序员在搞,很头大。因此想用Ext减轻一些页面UI方面的工作量。原来打算开始学习EXTJS的,突然发现楼主的这篇文章,很感兴趣,竟然可以用纯java的方式构建基本上和ExtJS一样的页面。但又有些担心,我们平时使用struts2+hibernate+spring开发,引入ExtJS纯粹是想减轻UI方面的工作量,那在ssh的架构下,是否可以使用Ext-Gwt呢?
6 楼 xplq 2008-12-17  
newchengse 写道

想跟楼主一起研究学习。想问一下,我对JS一点也不熟,在这种情况下,是不是学习Ext-Gwt更好于学习ExtJS?

从入门方面来说,你可以不用了解js,等深入了解后,js还是可以起到辅助作用的。作为WEB开发,对js的了解还是很重要的。
5 楼 newchengse 2008-12-16  
想跟楼主一起研究学习。想问一下,我对JS一点也不熟,在这种情况下,是不是学习Ext-Gwt更好于学习ExtJS?
4 楼 qq6518980 2008-12-11  
公司不能用myeclipse 吗?不会吧
3 楼 wcc137 2008-12-08  
公司也不能用myeclipse,只是自己的电脑是用这工具。去公司找个电脑试试。
2 楼 xplq 2008-12-06  
myeclipse 好久没有用,因为是授权版本,所以工作中不允许用,软件应该是没有问题,个人觉得,可以试试建立web项目就可以了,呵呵,多试试,应该没有什么问题的。
1 楼 wcc137 2008-12-06  
我用myeclipse6.5.1,jdk1.5,gwt-windows-1.5.2,gxt-1.2,cypal.studio.for.gwt-1.0,还需要什么软件么?我在建立项目时没有File—New—Other—Web—Dynamic Web Project ,是怎么回事?我还有什么错误吗?

相关推荐

Global site tag (gtag.js) - Google Analytics