gwt flash bridge 在adobe flex bridge 的基础上,借助gwt 提供的 javascript overlay type 和jsni 对其进行了封装,实现了在gwt 环境下,使用java语言 访问和使用flash平台上的功能.
flash 提供了一些标准的浏览器平台没有提供的特性,例如对视频,音频,socket 等的支持,举个例子,gmail 中的附件上传功能就是使用flash实现的(右键点击上传附件的链接按钮). 还有大名鼎鼎的swf upload也是使用flash实现.
通过gwt flash bridge, 可以在基于gwt 的应用中灵活地集成flash平台一些优秀的功能. 这里有一个在gwt flash bridge基础上实现的上传demo
实际上,gwt flash bridge 及其基础 flex ajax library 非常灵活,不仅仅局限于访问标准的flash api, 任何flash/as3/flex 中的对象都可以很容易地"export" ,然后在gwt 中使用.
示例代码:
package
{
import flash.display.Sprite;
import bridge.FABridge;
public class EmptyFABridgeSWF extends Sprite
{
private var externalBridge:FABridge;
public function EmptyFABridgeSWF()
{
externalBridge = new FABridge();
externalBridge.rootObject = this;
}
}
}
这个开始以为很难,后来发现实现起来很简单,在 gwt 的表现层框架 gxt 中有一个 FlashComponent组件可以用来嵌套flash到 gwt的客户端 第一步: url="http://{server.name}:{server.port}/{context.root}/xx.swf FlashComponent flashComponet = new FlashComponent(ur
GWT项目和FLEX项目是相互独立的,在GWT项目中引用FLEX项目的页面 首先将FABridge 的fabridge.as放入FLEX并在Application页面导入引用,如下: <mx:Application xmlns:mx="http://www.adobe.com/2006/mxml" xmlns:bridge="bridge.*"> 另外加上以下代码: <bridge:FABridg