锁定老帖子 主题:gxt:ext-gwt入门
精华帖 (0) :: 良好帖 (0) :: 新手帖 (0) :: 隐藏帖 (1)
|
|
---|---|
作者 | 正文 |
发表时间:2008-12-05
最后修改:2008-12-06
从今天开始研究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自带的运行环境。 声明:ITeye文章版权属于作者,受法律保护。没有作者书面许可不得转载。
推荐链接
|
|
返回顶楼 | |
发表时间: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 ,是怎么回事?我还有什么错误吗?
|
|
返回顶楼 | |
发表时间:2008-12-06
myeclipse 好久没有用,因为是授权版本,所以工作中不允许用,软件应该是没有问题,个人觉得,可以试试建立web项目就可以了,呵呵,多试试,应该没有什么问题的。
|
|
返回顶楼 | |
发表时间:2008-12-08
公司也不能用myeclipse,只是自己的电脑是用这工具。去公司找个电脑试试。
|
|
返回顶楼 | |
发表时间:2008-12-11
公司不能用myeclipse 吗?不会吧
|
|
返回顶楼 | |
发表时间:2008-12-16
想跟楼主一起研究学习。想问一下,我对JS一点也不熟,在这种情况下,是不是学习Ext-Gwt更好于学习ExtJS?
|
|
返回顶楼 | |
发表时间:2008-12-17
newchengse 写道 想跟楼主一起研究学习。想问一下,我对JS一点也不熟,在这种情况下,是不是学习Ext-Gwt更好于学习ExtJS? 从入门方面来说,你可以不用了解js,等深入了解后,js还是可以起到辅助作用的。作为WEB开发,对js的了解还是很重要的。 |
|
返回顶楼 | |
发表时间:2008-12-17
谢谢楼主回复。
我在企业里工作,由于人手不足,没有专门的美工一职。平时搞页面的时候都是我们这些程序员在搞,很头大。因此想用Ext减轻一些页面UI方面的工作量。原来打算开始学习EXTJS的,突然发现楼主的这篇文章,很感兴趣,竟然可以用纯java的方式构建基本上和ExtJS一样的页面。但又有些担心,我们平时使用struts2+hibernate+spring开发,引入ExtJS纯粹是想减轻UI方面的工作量,那在ssh的架构下,是否可以使用Ext-Gwt呢? |
|
返回顶楼 | |
发表时间:2008-12-30
gxt在struts2中怎么使用??
|
|
返回顶楼 | |
发表时间:2009-01-03
发现GXT的model的写法: 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); }
|
|
返回顶楼 | |