文档章节

Google Web Toolkit搭建Web扫描应用

yushulx
 yushulx
发布于 2015/03/17 15:08
字数 589
阅读 24
收藏 0

GWT (Google Web Toolkit)帮助开发者使用Java来开发复杂的JavaScript应用。很多出色的产品,如Google AdSense,Google AdWords等都是使用GWT开发的。这里介绍下如何创建第一个GWT应用,以及如何通过GWT来创建一个简单的Web扫描应用。

参考原文:Building Web Scanning Applications with GWT

GWT下载安装

使用Eclipse+GWT插件来搭建开发环境。请确认系统是否安装了JDK 7

  • Eclipse 4.4 (Luna) > https://dl.google.com/eclipse/plugin/4.4

  • Eclipse 4.3 (Kepler) > https://dl.google.com/eclipse/plugin/4.3

  • Eclipse 3.8/4.2 (Juno) > https://dl.google.com/eclipse/plugin/4.2

插件安装方法:

  1. 运行Eclipse

  2. 点击Help > Install New Software…

  3. 点击Add…,添加地址http://dl.google.com/eclipse/plugin/4.4

  4. 选择Google plugin for EclipseGWT Designer for GPE,SDKs

创建第一个GWT应用

点击插件按钮,创建一个工程WebTwainDemo

输入包名com.dynamsoft.sample.WebTwainDemo

现在运行应用。在第一次运行的时候,会看到Chrome需要安装插件:

安装之后刷新页面,程序可以正常运行了:

使用GWT和DWT创建Web扫描应用

找到Dynamic Web TWAIN的安装目录{Dynamic Web TWAIN Installation Path}\Dynamic Web TWAIN SDK 10.1.1 Trial\Samples\Getting Started。拷贝Resources目录到工程的war目录下。接下来做一些代码修改。

WebTwainDemo.html

包含两个js资源文件:

<script type="text/javascript" src="Resources/dynamsoft.webtwain.initiate.js"> </script>
<script type="text/javascript" src="Resources/dynamsoft.webtwain.config.js"> </script>
 

添加DWT容器:

<div id="dwtcontrolContainer"></div>

添加按钮容器:

<div id="scanButtonContainer"></div>

比较代码可以发现。使用GWT开发,HTML文件中不需要添加按钮元素和JS代码。

WebTwainDemo.java

找到入口函数onModuleLoad(),创建一个按钮实例:

final Button scanButton = new Button("Scan");
scanButton.addStyleName("scanButton");
RootPanel.get("scanButtonContainer").add(scanButton);
 
class TwainHandler implements ClickHandler {
 
            public void onClick(ClickEvent event) {
                acquireImage();
            }
 
            private void acquireImage() {
                nativeAcquireImage();
            }
        }
 
TwainHandler twainHandler = new TwainHandler();
scanButton.addClickHandler(twainHandler);
 

通过JSNI,使用Java调用JavaScript代码:

public static native void nativeAcquireImage() /*-{
        var DWObject = $wnd.Dynamsoft.WebTwainEnv.GetWebTwain('dwtcontrolContainer'); // Get the Dynamic Web TWAIN object that is embeded in the div with id 'dwtcontrolContainer'.
        DWObject.IfDisableSourceAfterAcquire = true; // Source will be closed automatically after acquisition.
        DWObject.SelectSource(); // Select a Data Source (a device like scanner) from the Data Source Manager.            
        DWObject.OpenSource(); // Open the source. You can set resolution, pixel type, etc. after this method. Please refer to the sample 'Scan' -> 'Custom Scan' for more info.
        DWObject.AcquireImage(); // Acquire image(s) from the Data Source. Please NOTE this is a asynchronous method. In other words, it doesn't wait for the Data Source to come back. 
    }-*/;
 

现在刷新一下测试页面,扫描应用已经可以运行了。

视频


源码

https://github.com/DynamsoftRD/DWT-with-Web-App-Framework/tree/master/gwt

git clone https://github.com/DynamsoftRD/DWT-with-Web-App-Framework.git


本文转载自:http://www.codepool.biz/twain/web-scanning-applications-with-gwt.html

yushulx
粉丝 28
博文 106
码字总数 60640
作品 0
杭州
私信 提问
Google Web Toolkit 2.0 正式发布

在Campfire One活动上,Google正式发布了Google Web Toolkit 2.0,并展示了若干GWT新技术,其中最引人注意的当属Speed Tracer。 Speed Tracer是一款功能强大的性能分析Chrome扩展,可以让用户...

红薯
2009/12/09
447
0
Google Plugin for Eclipse

Google Plungin for Eclipse是Google推出的一款Eclipse插件,使用该插件,你可以从Eclipse 中创建、测试和上传App Engine应用程序,它同时支持Google Web Toolkit(GWT)开发。据Google Web ...

匿名
2011/11/18
3.1K
0
Node.js vs Opa: Web 框架杀手

一个典型的web项目包括了服务器端的编程语言,通常还有基于这个语言的一个或者多个框架,前端用JavaScript,还有一个数据库和数据库语言,例如SQL。为了搭建这样一个项目,你需要学习很多技术...

虫虫
2012/03/06
4.6K
14
Eclipse3.6怎么安装GWT呢?

按照Google code步骤,在安装GWT时出现了这样的错误 “Cannot complete the install because one or more required items could not be found. Software being installed: Google Web Toolk......

笑而不语
2010/10/06
3.4K
2
开发者必备 揭秘谷歌8大热点新工具[图]

近日,谷歌针对开发者推出了8个最新的工具。其中一个是谷歌全面更新了BigQuery分析引擎,它包括新的图形用户界面、新的API等新功能。另外,谷歌也推出了把Flash文件转换成HTML5的Swiffy。下面...

taote
2011/12/02
0
2

没有更多内容

加载失败,请刷新页面

加载更多

浅析大数据 学习大数据后能做什么

大数据时代的到来使得大数据开发人才迎来了前所未有的机遇和挑战!一个绝佳的入行机会摆在了众人面前!于是,很多人都在打听,大数据到底有何应用?可以用来做什么?好程序员今天就为大家作出...

好程序员IT
16分钟前
1
0
C# USB视频人脸检测

此程序基于 虹软人脸识别进行的开发 SDK下载地址:https://ai.arcsoft.com.cn/ucenter/user/reg?utm_source=csdn1&utm_medium=referral 前提条件 从虹软官网下载获取ArcFace引擎应用开发包,...

是哇兴哥棒棒哒
27分钟前
2
0
Vagrant虚拟机硬盘扩容

# 停止虚拟机vagrant halt <machine_name># 进入VirtualBox VMs目录,查看并记录原磁盘uuid,留作后用vboxmanage showhdinfo box-disk1.vmdk# 克隆磁盘,vmdk格式无法调整大小,需要...

sskill
28分钟前
1
0
分布式商业萌芽,银行迎来发展新机遇

01 分布式商业萌芽,银行迎来发展新机遇 金融界:近几年区块链的热度经历了过山车般的转折。目前追逐区块链的资本也开始冷静下来,于此同时,各大商业银行对区块链的研究应用也越来越多。您认...

Java领航员
34分钟前
2
0
Spring系列教程六: Spring jdbcTemplate在Dao中的使用

概念 Spring中的jdbcTemplate的主要作用是实现数据的交互,下面我们就在dao层中如何使用jdbctemplate写测试案例 项目目录如下 基于xml实现jdbctemplate 这里我们使用的是JdbcDaoSupport这个类...

我叫小糖主
37分钟前
2
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部