快速业务通道

用Flash远程调用增强J2EE表示层 - 编程入门网

作者 佚名技术 来源 NET编程 浏览 发布时间 2012-06-23
器的实现分开增加了维护应用的复杂性。另外,无论什么时候一

个新的浏览器发布后,应用(或应用的一个部分)就必须重新编码并测试。

当开发者明确知道他在标准的客户端配置什么样的应用时,使用DHTML的确有它的优势。如果企业内部网仅适用IE6.0,针对该浏览器的应用逻辑可以被处理得非常得当。

Applet/Swing:

对于Java开发者而言,基于applet或swing的解决方案是另外一种可行的解决方案。它有如下的优点:

1. 创建基于Java的应用无论对于用户还是开发者都是免费的

2. Applets可以通过大部分的浏览器进行配置

3. Applets允许用户创建丰富的用户界面

4. 使用Applets让客户端分担了一部分服务器的负载

选择使用基于applets的解决方案也必须衡量它的以下不足: 开发者不能确定用户是否安装了JRE. 即便安装了,也不一定是所需要的版本。

Applets为开发者在标准客户端配置他们的应用提供了很大的选择余地。对于标准客户端,开发者可以假定正确的JVM版本已经安装

除了使用applet/Swing或DHTML应用,开发者还有一个选择: 第三方解决方案。

第三方解决方案: Mecromedia Flash

为了达到DHTML或applet应用同样的效果,第三方产品需要具备以下特性:

1. 任何标准浏览器都可以使用它

2. 应用程序的运行几乎不需要用户的干涉

3. 客户端的运行时间必须是免费或者至少很便宜

4. 客户端应当可以与已有的业务逻辑结合在一起

用Flash远程调用增强J2EE表示层(3)

时间:2010-12-10

有一些第三方解决方案在此领域共同竞争,包括Apple的QuickTime, Microsoft的ActiveX,和Macromedia的Flash Suite。所有这三种解决方案在许多用户的系统上都得到了使用。它们都能应用在基于Web浏览器的应用程序之中,而用户不需付出任何代价。然而相比于ActiveX和QuickTime,Flash为Java开发者提供了一个重大的助益:它允许客户端应用调用任何J2EE应用服务器上的方法。这就意味着已经存在的EJB, servlets, Web services, 和类中的业务逻辑可以不作任何改变地被基于Flash的前端调用。

服务器端产品Flash Remoting使得Flash客户端可以调用J2EE Server上的方法。Flash Remoting由两个重要的部分组成:用于将本地的Flash对象和方法映射到Java对象和方法的网关服务器和客户端支持。网关应用在标准的war文件中,可在任何J2EE应用服务器中配置。客户端支持组成为ActionScript(被Flash运行和配置工具所使用的编程语言)增加的功能。

要让Flash Remoting工作,Flash应用必须连接到J2EE Server,获取它想要利用的服务(Java对象)的句柄并调用方法。这通过使用ActionScript库(NetServices)来做到。如下的例子与名为MX的Web应用中的网关连接,web.xml文件servlet映射如下:

<servlet-mapping> <servlet-name>FlashGatewayServlet</servlet-name> <url-pattern>/gateway</url-pattern> </servlet-mapping> //Load the NetServices ActionScript Library #include "NetServices.as" //Create a connection to the mx webapp running on port 80 on the local //machine NetServices.setDefaultGatewayUrl("http://localhost/mx/gateway";); //Invoke the createGatewayConnection to initialize the Flash Remoting //functionality gatewayConnnection = NetServices.createGatewayConnection(); //Bind the Java Object: com.tallan.data.providers.FlashDemo //to a service called tallanDataService. tallanDataService = gatewayConnnection.getService ("com.tallan.data.providers.FlashDemo", this); //Invoke a method called getReportData on the service named //tallanDataSerevice tallanData

凌众科技专业提供服务器租用、服务器托管、企业邮局、虚拟主机等服务,公司网站:http://www.lingzhong.cn 为了给广大客户了解更多的技术信息,本技术文章收集来源于网络,凌众科技尊重文章作者的版权,如果有涉及你的版权有必要删除你的文章,请和我们联系。以上信息与文章正文是不可分割的一部分,如果您要转载本文章,请保留以上信息,谢谢!

分享到: 更多

Copyright ©1999-2011 厦门凌众科技有限公司 厦门优通互联科技开发有限公司 All rights reserved

地址(ADD):厦门软件园二期望海路63号701E(东南融通旁) 邮编(ZIP):361008

电话:0592-5908028 传真:0592-5908039 咨询信箱:web@lingzhong.cn 咨询OICQ:173723134

《中华人民共和国增值电信业务经营许可证》闽B2-20100024  ICP备案:闽ICP备05037997号