GWT默认样式文件standard.css

使用gwt开发有一段时间了,之后随着项目体积的不断增大,编译部署的成本越来越大,使用gwt开发的模块不得不逐渐被原生javascript所替代,当然这里也不是纯原生,而是使用了JQuery这个框架。 不过与java编译生成javascript还是直接了许多。 gwt是个很好的工具,也在不断的发展中,技术没有什么好坏之分,只是要找到更适合实际需要的。 日志本身其实是在使用gwt过程中记录下来的一些辅助文档,早该贴出来的,封存了好久哎~~ 没什么特别的,把gwt默认的样式文件贴一下,这个是gwt2.0.4版本的,现在应该2.3.x了,可能会有些差别吧,继续gwt的朋友们,加油! [crayon-5 … “GWT默认样式文件standard.css”

Read More

解决gwt项目邮件发送失败

使用gwt开发项目中,有发送邮件的需求,使用javax.mail来发送邮件,测试时发现邮件不能发送。 查看日志输出,出现如下的错误: The API package ‘mail’ or call ‘Send()’ was not found 错误消息原文是这个样子的: Exception in thread “Thread-10” com.google.apphosting.api.ApiProxy$CallNotFoundException: The API package ‘mail’ or c … “解决gwt项目邮件发送失败”

Read More

gwt命令行编译参数设置

在eclipse中编译gwt项目时,可以直接添加编译参数。 There are many options you can pass to the GWT compiler process to control how you want to compile your GWT application and where you want the output to be generated. These options can differ slightly from version to version, but will generally include the options shown … “gwt命令行编译参数设置”

Read More

gwt项目uibinder中的href属性转义问题

使用gwt进行web项目开发时,在uibinder中使用a标签设置href属性值需要注意到是,属性值需要进行转义转码。 目前飞尘只遇到了这个&,其它的还不清楚,如有遗漏请告诉我哦。 &连接符需要转义为& amp; 其实&和amp;之间是没有空格的,不过这里加了空格的话就看不到了,嘿嘿。 举个例子,如需要这样的地址:

而转义后的地址为:

如果没有对&进行转义,就会报下面的错误提示: The reference to entity “b” must end … “gwt项目uibinder中的href属性转义问题”

Read More

开启gwt远程调试功能

一般情况下,使用GWT开发都是在本机进行调试,也就是跑develop mode,但是有的时候需要测试其它的系统环境,这就需要在远程电脑上进行调试–remote debug。 开启远程调试其实很简单,只需要添加一个参数而已。具体如下: 依次找到菜单项 Run Configurations->Web Application->project name 切换到(x)= Arguments标签 在Program arguments下添加参数 -bindAddress 0.0.0.0 也可以指定为本机的ip地址 http://127.0.0.1:8888/module.html?gwt.co … “开启gwt远程调试功能”

Read More

gwt新窗口打开url设置

在gwt项目中,需要在新窗口打开url时,最简单的就是使用window对象的open方法。 在项目开发中,遇到这样一个问题,以新窗口打开的页面缺少菜单、地址栏、工具栏等,简单的说法就是模态窗口。由于一直是在firefox中进行测试,导致这个问题没有被察觉,firefox是将新窗口在新标签中打开,因此不存在模态的情况,但是在ie下此问题就浮出水面了。 原始代码是类似这个样子的: Window.open(newURL, “_blank”, null); 就是null参数控制新窗口为模态的,改为下面的样子就没有问题了 Window.open(newURL, “_blank”, “”); 参考一下op … “gwt新窗口打开url设置”

Read More

在gwt项目中自己实现PopupPanel功能

在gwt项目开发中遇到这样一个问题:使用PopupPanel后导致调用JavaScript绑定(例如用JQuery)的事件实效,经过几番折腾之后,终于找到了一种解决方法。 这里当然只是个人的一种解决办法,如果有更好的可以告诉飞尘哦,大家交流一下。 先来说说我的方法吧。 就是通过自己实现PopupPanel的功能及效果来避免这个问题,实现起来也不是很困难。 大概的思路就是通过给widget添加样式并设置隐藏显示属性来实现自定义的PopupPanel。 首先就是创建widget了,可以在代码中新建,也可以通过uibinder获取*.ui.xml中已经设计好的widget。此处假定widget名为s … “在gwt项目中自己实现PopupPanel功能”

Read More

在gwt项目中使用cookies

在gwt项目中使用cookies记录用户有关信息,开发模式下似乎有点问题,不能设置cookies,domain那里好像是null,所以cookies设置失败,不知道是不是代码写的有问题,也没有时间仔细研究,每天事情一大堆,没完没了的,而且现在人家不喜欢gwt,原来使用gwt开发的模块正在一点一点被侵蚀掉,迟早还是会退化到…… 个人接触gwt时间不长,但是还是比较喜欢的,java里写起来很舒服,现在用aptana主要写js,虽然还是eclipse,但是js真的感觉不顺,再加上jquery,还有plugins,真是感觉好乱啊,可能是对jquery还不够熟悉吧。 使用gwt最大的障碍就是它得编译,项 … “在gwt项目中使用cookies”

Read More

JavaScript性能优化手记

在GWT开发过程总,遇到了一个javascript执行效率慢的问题,分析发现:造成性能慢的主要原因是要加载大量数据,针对此问题寻找解决方案。 先查阅了一下不同浏览器执行javascript的性能对比 详细的结果可以参考:2010年最新主流浏览器速度测试 主要的结论就是IE浏览器执行速度最慢,因此优化主要针对IE进行 优化的关键是找到影响速度的瓶颈 经过分析,js获取到大量数据后,将数据进行解析整理,最终生成表格形式呈现给用户,表格是由FlexTable来生成,并在UIBinder中创建。 原有的做法是将数据逐条加入到FlexTable中,而这一方法实际是对DOM进行添加节点操作,而已知的情况是 … “JavaScript性能优化手记”

Read More

GWT中捕获用户事件

这里捕获的事件不是针对特定的元素对象,而是针对页面模块级别,此处主要使用到NativePreviewEvent 具体的描述可以参考官方文档 http://google-web-toolkit.googlecode.com/svn/javadoc/2.0/com/google/gwt/user/client/Event.NativePreviewEvent.html 另外还有个例子 http://code.google.com/p/google-web-toolkit/issues/detail?id=3892 下面仅给出关键代码

Read More