- 浏览: 447105 次
- 性别:
- 来自: 北京
文章分类
- 全部博客 (267)
- java (8)
- 求职&面试 (1)
- linux (33)
- windows (1)
- C++ (5)
- android (12)
- QT (1)
- 经验 (1)
- memory-leaks (1)
- Streaming&V/A (1)
- network&security (5)
- SCM (13)
- mysql (10)
- browsers (4)
- Windows APIs (2)
- opensource (1)
- pm (1)
- GDI (1)
- database (14)
- MFC (1)
- web&fronts (17)
- Tomcat (4)
- OLE (1)
- 观后感 (1)
- Production (2)
- UML (3)
- Javascript (7)
- Cloud Computing&SAAS (5)
- SoftwareEngineering (1)
- Computer&Maintenance (1)
- Web (8)
- Desgin (1)
- J2ee (10)
- mysql cluster (0)
- LB&HA (2)
- webserver (11)
- php (5)
- cas&authtication (0)
- Languages (1)
- IDEs (3)
- architecture (2)
- iOS (8)
- spring (3)
- webservices (1)
- security (1)
- MVCFrameworks (2)
- bservices (0)
- build-tools (2)
- unittest (1)
- spring-security (0)
- sphinx (2)
- hibernate (1)
- mybatis (2)
- search (0)
- nginx (2)
- design&production (2)
- DFS (0)
- algorithm (0)
- distributed&network (0)
- blogs (0)
- os&admin (0)
- fastcgi (0)
- kv-db (0)
- operation&maintenance (1)
- productions (9)
- 养生 (1)
- appserver (1)
- HTTP (2)
- test (1)
- erlang (2)
- browser (0)
- 非技术 (2)
- mobiles (2)
- cloud computing (2)
- Business (2)
- maven (1)
- python (5)
- 人生 (0)
- Cryptography (3)
- CV (0)
- cms (2)
- jqm (2)
- html (2)
- flex (1)
- redmine (1)
- iptables (1)
- groovy (1)
- scala (1)
- grails (1)
- ftp (3)
- vsftpd (2)
- lua (0)
- chroot (3)
- jailkit (3)
- UED (0)
- myeclipse (2)
- ide (2)
- eclipse (2)
最新评论
-
Nick712:
http://blog.csdn.net/victory08/ ...
处理SVN出现:Cleanup failed to process the following paths: xxx -
xs6262460:
Spring AOP根据JdbcTemplate方法名动态设置数据源 -
xhpscdx:
我的解决办法是把D:\ACRS\Projects\TAIS 下 ...
处理SVN出现:Cleanup failed to process the following paths: xxx -
hnraysir:
总结得相当不错,支持下。
使用CodeIgniter 创建 RESTful 服务 REST API【原创译文】 -
云上太阳:
这个必须评论下,间接的救过俺的命啊
解决tomcat启动报错,加强错误日志的显示:
一.为什么我们选择GWT?
Google 网页工具包 (GWT),可以使用 Java 编程语言编写 AJAX 前端,然后 GWT 会交叉编译到优化的 JavaScript 中,而 JavaScript 可以自动在所有主要浏览器上运行。在开发过程中,您可以用 JavaScript 按照您习惯的相同“编辑 - 刷新 - 查看”循环快速反复,还有另一个好处就是能够调试和逐行单步调试 Java 代码。准备好进行部署后,GWT 会将 Java 源代码编译到优化且独立的 JavaScript 文件中。使用 Google 网页工具包可以轻松地为现有网页或整个应用程序构建一个 Widget。
使用 Java 语言编写 AJAX 应用程序,然后编译为优化的 JavaScript
与仅在文本级别运行的 JavaScript Minifier 不同,GWT 编译器会在整个 GWT 代码库中执行综合性静态分析和优化,通常生成的 JavaScript 加载和执行均比等效手写的 JavaScript 更快。例如,GWT 编译器可以安全地消除无用代码 -- 极大的减少不使用的类、方法、字段甚至方法参数 -- 以确保您编译的脚本尽可能最小。另一个示例:GWT 编译器选择性地内联方法,消除方法调用的性能开销。
交叉编译提供了开发所需的可维护的抽象方法和模块性,而不会导致运行时性能损失。
二.为什么会选择SmartGWT?
SmartGWT是一个利用GWT封装SmartClient的开源项目。类似于GWT-Ext。SmartClient是一个企业级的ajax框架,包括非常出色的UI库、工具库和客户端服务端数据绑定等功能。
看看它的Dome,你就会为它的功能所折服的。
http://www.smartclient.com/smartgwt/showcase/
三.GWT与SmartGWT整合
1.下载SmartGWT2.0,在这里,http://code.google.com/p/smartgwt/downloads/list
解压,里面包括smartgwt.jar,smartgwt-skins.jar两个jar文件,API以及几个dome。
2.假定你已经配置好Eclipse下开发GWT的环境,如果你还没有配置好,请看这里:
http://code.google.com/webtoolkit/usingeclipse.html
3.在Eclipse下,新建项目firstSmartGWT,包名:com.mycompany.app
可以看到它已经给你生成了一个helloworld的例子。
4.引入smartGWT相关的jar包,右击项目,build path,add external Archives,如后选择smartgwt.jar,smartgwt-skins.jar引入。
5.修改FirstSmartGWT.html
在war包下面,打开FirstSmartGWT.html,添加SmartGWT的资源引用模块(红色部分),其中firstsmartgwt为项目名的全部小写名称。
- <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
- <!-- The HTML 4.01 Transitional DOCTYPE declaration-->
- <!-- above set at the top of the file will set -->
- <!-- the browser's rendering engine into -->
- <!-- "Quirks Mode". Replacing this declaration -->
- <!-- with a "Standards Mode" doctype is supported, -->
- <!-- but may lead to some differences in layout. -->
- <html>
- <head>
- <meta http-equiv="content-type" content="text/html; charset=UTF-8">
- <!-- -->
- <!-- Consider inlining CSS to reduce the number of requested files -->
- <!-- -->
- <link type="text/css" rel="stylesheet" href="FirstSmartGWT.css">
- <span style="color: #ff0000;"> <script> var isomorphicDir = "firstsmartgwt/sc/"; </script></span>
- <!-- -->
- <!-- Any title is fine -->
- <!-- -->
- <title>GWT和SmartGWT整合实例</title>
- <!-- -->
- <!-- This script loads your compiled module. -->
- <!-- If you add any GWT meta tags, they must -->
- <!-- be added before this line. -->
- <!-- -->
- <script type="text/javascript" language="javascript" src="firstsmartgwt/firstsmartgwt.nocache.js"></script>
- </head>
- <!-- -->
- <!-- The body can have arbitrary html, or -->
- <!-- you can leave the body empty if you want -->
- <!-- to create a completely dynamic UI. -->
- <!-- -->
- <body>
- <span style="white-space: pre;"> </span>
- <!-- OPTIONAL: include this if you want history support -->
- <iframe src="javascript:''" id="__gwt_historyFrame" tabIndex='-1' style="position:absolute;width:0;height:0;border:0"></iframe>
- <!-- RECOMMENDED if your web app will not function without JavaScript enabled -->
- <noscript>
- <div style="width: 22em; position: absolute; left: 50%; margin-left: -11em; color: red; background-color: white; border: 1px solid red; padding: 4px; font-family: sans-serif">
- Your web browser must have JavaScript enabled
- in order for this application to display correctly.
- </div>
- </noscript>
- <span style="color: #00ff00;"><h1>Web Application Starter Project</h1>
- <table align="center">
- <tr>
- <td colspan="2" style="font-weight:bold;">Please enter your name:</td>
- </tr>
- <tr>
- <td id="nameFieldContainer"></td>
- <td id="sendButtonContainer"></td>
- </tr>
- </table></span>
- </body>
- </html>
下面的为helloworld相关的内容,删掉。
- <h1>Web Application Starter Project</h1>
- <table align="center">
- <tr>
- <td colspan="2" style="font-weight:bold;">Please enter your name:</td>
- </tr>
- <tr>
- <td id="nameFieldContainer"></td>
- <td id="sendButtonContainer"></td>
- </tr>
- </table>
6.修改web.xml
在war/WEB-INF下面打开web.xml。
- <?xml version="1.0" encoding="UTF-8"?>
- <!DOCTYPE web-app
- PUBLIC "-//Sun Microsystems, Inc.//DTD Web Application 2.3//EN"
- "http://java.sun.com/dtd/web-app_2_3.dtd">
- <web-app>
- <span style="color: #00ff00;"><!-- Servlets -->
- <servlet>
- <servlet-name>greetServlet</servlet-name>
- <servlet-class>com.mycompany.app.server.GreetingServiceImpl</servlet-class>
- </servlet>
- <servlet-mapping>
- <servlet-name>greetServlet</servlet-name>
- <url-pattern>/firstsmartgwt/greet</url-pattern>
- </servlet-mapping></span>
- <!-- Default page to serve -->
- <welcome-file-list>
- <welcome-file>FirstSmartGWT.html</welcome-file>
- </welcome-file-list>
- </web-app>
删掉下面的内容
- <!-- Servlets -->
- <servlet>
- <servlet-name>greetServlet</servlet-name>
- <servlet-class>com.mycompany.app.server.GreetingServiceImpl</servlet-class>
- </servlet>
- <servlet-mapping>
- <servlet-name>greetServlet</servlet-name>
- <url-pattern>/firstsmartgwt/greet</url-pattern>
- </servlet-mapping>
7.修改FirstSmartGWT.gwt.xml
在src/com/mycompany/app下面,添加<inherits name="com.smartgwt.SmartGwt"/>,引用SmartGWT模块
- <?xml version="1.0" encoding="UTF-8"?>
- <module rename-to='firstsmartgwt'>
- <!-- Inherit the core Web Toolkit stuff. -->
- <inherits name='com.google.gwt.user.User'/>
- <!-- Inherit the default GWT style sheet. You can change -->
- <!-- the theme of your GWT application by uncommenting -->
- <!-- any one of the following lines. -->
- <inherits name='com.google.gwt.user.theme.standard.Standard'/>
- <span style="color: #ff0000;"><inherits name="com.smartgwt.SmartGwt"/></span>
- <!-- <inherits name='com.google.gwt.user.theme.chrome.Chrome'/> -->
- <!-- <inherits name='com.google.gwt.user.theme.dark.Dark'/> -->
- <!-- Other module inherits -->
- <!-- Specify the app entry point class. -->
- <entry-point class='com.mycompany.app.client.FirstSmartGWT'/>
- <!-- Specify the paths for translatable code -->
- <source path='client'/>
- </module>
8.修改FirstSmartGWT.java
打开src/com/mycompany/client下面的FirstSmartGWT.java,用下面的内容替换掉以前的内容。
- package com.mycompany.app.client;
- import com.google.gwt.core.client.EntryPoint;
- import com.smartgwt.client.util.SC;
- import com.smartgwt.client.widgets.IButton;
- import com.smartgwt.client.widgets.events.ClickEvent;
- import com.smartgwt.client.widgets.events.ClickHandler;
- /**
- * Entry point classes define <code>onModuleLoad()</code>.
- */
- public class FirstSmartGWT implements EntryPoint {
- /**
- * This is the entry point method.
- */
- public void onModuleLoad() {
- IButton button = new IButton("点我");
- button.addClickHandler(new ClickHandler() {
- @Override
- public void onClick(ClickEvent event) {
- // TODO Auto-generated method stub
- SC.say("恭喜你,GWT和SmartGWT集成好了。");
- }
- });
- button.draw();
- }
- }
9.至此GWT和smartGWT集成完毕。
发表评论
-
了解轻量级的移动开发Javascript类库- Zepto.js
2013-06-08 10:53 3622了解轻量级的移动开发Javascript类库- Zepto.j ... -
一些Flex炫效果网址
2013-02-27 16:47 0一些Flex炫效果网址 一些Flex炫效果网址 ... -
一个不错的模板提供网站
2013-02-25 14:03 0http://www.trippo.co/ -
jquery mobile的一些插件(图片滚动)
2013-02-22 14:09 10405jquery mobile的一些插件(图片滚动) ... -
分享15款为jQuery Mobile定制的插件
2013-02-22 14:00 1197分享15款为jQuery Mobile定制的插件 < ... -
为什么推荐使用第三方CDN加速后的jquery库文件
2013-02-21 22:03 1704建议通过谷歌 ... -
http://mobile.51cto.com/hot-277261.htm
2013-02-21 17:41 0http://mobile.51cto.com/hot-277 ... -
谷歌Analytics优化网站与AB测试方法
2012-12-02 11:46 1998【转】谷歌Analytics优化网站与AB测试方法 ... -
不错的面向企业的Web前端框架OperaMasks
2012-12-02 01:31 1655OperaMasks 目录 简介 特点 ... -
不错的前端博客和站点
2012-11-28 16:53 0http://sofish.de/ http://alice ... -
MyEclipse安装GWT插件
2012-08-22 15:11 929最近开始研究 GWT,但是按照googl ... -
GWT开发的8个忠告(转载)
2012-08-22 14:41 1195Google Web工具包(GWT ... -
spring集成gwt的办法
2012-08-16 16:43 1179spring集成gwt的办法 spring集成gwt, ... -
利用GWT开发高性能Ajax应用
2012-08-15 20:57 1029利用GWT开发高性能Aja ... -
ExtJS和GWT的比较
2012-08-14 22:20 1115在写之前我没看 ... -
5个顶级的gwt框架
2012-08-14 18:45 1806新闻地址:http://www.gwtsite ... -
开源中最好的Web开发的资源
2012-08-06 15:20 934开源中最好的Web开发的资源 时间:2011年0 ... -
Web前端开发的一般项目流程
2012-08-03 17:22 2133Web前端开发的一般项目流程 前面聊了一些关于We ... -
10件开发者和老板都要知道的HTML5的那些事
2012-07-30 22:51 857【转载】 由 HTML5研究小组 于 周一, ... -
10款让你震撼的图片展示js代码
2012-07-23 15:00 83610款让你震撼的图片展示js代码 http:/ ...
相关推荐
8. **国际化和本地化**:SmartGWT支持多语言应用,你可以从实例中学习如何设置和切换不同的语言环境。 9. **性能优化**:SmartGWT提供了很多工具和策略来优化应用程序的性能,例如延迟加载、缓存策略等。通过分析...
SmartGWT是一个基于Google Web Toolkit (GWT) 的扩展框架,它通过提供大量预定义的用户界面组件和高级数据管理功能,极大地简化了GWT应用的开发。SmartGWT 3.1在前一版本的基础上进行了改进和优化,提升了性能和...
SmartGWT是一个强大的Java库,专门用于构建富互联网应用程序(RIA)。它基于Google Web Toolkit (GWT) 平台,并提供了丰富的用户界面组件和优化工具,使得开发人员能够轻松创建功能丰富的、交互性强的Web应用。GWT...
smartgwt结合数据库应用实例 体验富网络应用(RIA) 对应blog—— http://hi.csdn.net/link.php?url=http://blog.csdn.net%2FcatPan
在这个"smartgwt最新版本GWT的DEMO"中,我们可以深入学习SmartGWT如何与GWT结合,创建功能强大的Web应用。 Google Web Toolkit (GWT) 是一个由Google开发的开放源代码Java SDK,它允许开发者使用Java语言编写客户端...
SmartGwt 是一款基于 Java 的开源库,它为开发人员提供了丰富的组件和工具,用于构建高性能、富交互式的 Web 应用程序。在 SmartGwt 中,原生的 Desktop 功能是一个强大的特性,它允许开发者创建类似桌面应用的用户...
在IT行业中,SmartGWT是一个基于Google Web Toolkit (GWT) 的强大且高效的用户界面库,它提供了大量的组件,使得开发者能够快速构建复杂的Web应用程序。本文将深入探讨如何使用SmartGWT来创建一个自定义的分页Grid...
SmartGwt、Mybatis与Spring的整合是企业级Java应用开发中的常见技术栈组合,这三种框架各有其专长,可以高效地构建出强大的后台系统。SmartGwt是一款基于GWT(Google Web Toolkit)的开源UI组件库,提供丰富的用户...
本项目"smartGwt、spring、Mybatis整合"就是一个很好的例子,它将三种流行的技术——SmartGWT、Spring和Mybatis融合在一起,创建了一个包含登录功能和分页查询功能的应用。以下是关于这三个技术及其整合方式的详细...
标签 "源码" 暗示了压缩包可能包含一个简单的GWT项目源代码,我们可以从中学习如何设置和运行这个GWT与FusionCharts的集成实例。"工具"标签可能指的是使用到的开发工具,如Eclipse、IntelliJ IDEA,或者是构建工具如...
SmartGWT是一个强大的Java库,专门用于构建富互联网应用程序(RIA)。它基于Google Web Toolkit (GWT) 并扩展了其功能,提供了丰富的组件库和更直观的开发接口。SmartGWT 2.0是该框架的一个早期版本,对初学者来说是...
总的来说,这个DEMO将演示如何使用GWT和SmartGWT实现一个基本的数据管理界面,包括创建新的记录,查看列表,编辑选定记录以及删除记录。通过学习和理解这个DEMO,初学者能够快速掌握GWT中的CRUD操作,并为以后的项目...
SmartClient通常会提供一个包含所有必需库的jar包集合,包括SmartGWT库和SmartClient服务器端组件。如果你发现这些jar包被删除,你可以从SmartClient的官方网站或者通过Maven仓库下载最新版本,确保包括以下关键组件...
总的来说,这个例子旨在帮助学习者理解如何将SmartGWT的富客户端功能与Struts2的服务器端控制能力相结合,以构建高效、互动的Web应用。通过深入研究这个示例,开发者可以学习到如何在实际项目中整合这两个框架,提升...
GWT最初由SmartGWT公司开发,后来被Google收购并进一步发展。 **EJB3 (Enterprise JavaBeans 3)** 是Java EE(现在称为Jakarta EE)平台的一部分,它是一种用于构建可扩展、模块化、面向服务的企业级应用程序的标准...
11. **GWT库与框架**:探讨GWT社区中流行的库和框架,如SmartGWT、GXT、Vaadin等,它们扩展了GWT的功能,简化开发工作。 12. **测试与调试**:讲解如何使用GWT的单元测试框架和模拟器进行测试,以及如何利用Chrome...
Java二进制IO类与文件复制操作实例 16个目标文件 内容索引:Java源码,初学实例,二进制,文件复制 Java二进制IO类与文件复制操作实例,好像是一本书的例子,源代码有的是独立运行的,与同目录下的其它代码文件互不联系...
GWT Spring 使得在 Spring 框架下构造 GWT 应用变得很简单,提供一个易于理解的依赖注入和RPC机制。 Java扫雷游戏 JVMine JVMine用Applets开发的扫雷游戏,可在线玩。 public class JVMine extends java.applet....
GWT Spring 使得在 Spring 框架下构造 GWT 应用变得很简单,提供一个易于理解的依赖注入和RPC机制。 Java扫雷游戏 JVMine JVMine用Applets开发的扫雷游戏,可在线玩。 public class JVMine extends java.applet....