快速业务通道

为Eclipse组件实现Web用户界面 - 在基于Eclipse的组件内使用RIA技术 - 编程入门网

作者 佚名技术 来源 NET编程 浏览 发布时间 2012-06-15
App:handleButtonPressed()”);

为Eclipse组件实现Web用户界面 - 在基于Eclipse的组件内使用RIA技术(5)

时间:2011-08-11 IBM Robert Ma

图 2 总结了我们在本节内设计的 这个 Eclipse 与 Web UI 应用程序之间的通信渠道。

图 2. 通过 JavaScript 设计的 Eclipse 和 Web UI 应用程序间的通信渠道

通过 HTTP 进行通信

Web UI 应用程序和 Eclipse 之间进行通信的另一种方式是通过 HTTP 请求。在这 种方式中涉及到三方:Web UI 应用程序、Eclipse 工作台和一个 HTTP servlet(运行在 Eclipse 内) 。这类似于软件工程中的 Model-View-Controller (MVC) 设计模式。在这种情况下,Eclipse 工作台是 Model、 Web UI 应用程序是 View,而 HTTP servlet 则是 Controller。

每个 Eclipse 安装都 嵌入了一个开源的 Jetty 引擎,用以充当一个 HTTP 服务器并运行在 Eclipse 工作台内。Eclipse 平台 上的开发人员可轻松注册 servlet 以便处理来自 Eclipse 外部的 HTTP 请求。这个 HTTP servlet 还可 通过扩展点 org.eclipse.equinox.http.registry.servlets 和 org.eclipse.equinox.http.registry.resources 轻松地注册在 Eclipse 内。

为了形成 Web UI 应用程序和 Eclipse 之间的通信渠道,必须创建一个 HTTP servlet。清单 11 和 12 展示了如何使用这些扩展点注册一个 HTTP servlet。完整的说明,请参考相关的扩展点文档。

在文件 plugin.xml 内,我们注册了这些扩展点以供 HTTP 服务器使用。

清单 11. 扩展 点的 XML 注册

<extension  point="org.eclipse.equinox.http.registry.resources">   <resource alias="/"  base-name="/webContent" />  </extension>  <extension  point="org.eclipse.equinox.http.registry.servlets">   <servlet alias="/rob"     class="rob.MyHTTPServlet">   </servlet>   </extension>

为Eclipse组件实现Web用户界面 - 在基于Eclipse的组件内使用RIA技术(6)

时间:2011-08-11 IBM Robert Ma

我们用 Java 语言定义 servlet。

清单 12. 扩展点的 Java 注册

public MyHTTPServlet extends HTTPServlet {  protected void  doGet(HttpServletRequest httpServletRequest,   HttpServletResponse  httpServletResponse) throws ServletException,   IOException {   …  }  protected void doPost(HttpServletRequest httpServletRequest,    HttpServletResponse httpServletResponse) throws ServletException,   IOException  {   …  }  }

HTTP servlet 被注册后,这个 servlet 将能 够处理来自于 Eclipse 外部的所有 HTTP 请求。根据实施应用程序所用技术的不同,生成 HTTP 请求的 方法也不同。然而,对于绝大多数可用的 Web UI 技术而言,有一个 API 可被用于生成 HTTP 请求。

大多常用浏览器,包括 Internet Explorer®、Mozilla、Safari 和 Opera,都提供了允许 JavaScript 进行 HTTP 请求的支持。例如,在 Internet Explorer 中,可以使用 ActiveXObject ("Microsoft.XMLHTTP") 创建 HTTP 请求对象;在 Mozilla 和 Safari 中,则可以用 XMLHttpRequest。 在 Web 上,可以很容易地找到如何用 JavaScript 创建 HTTP 请求的例子。

同样地,如果 Web UI 应用程序是在一个浏览器的容器(如 Flash 播放器)内运行的,那么运行应用程序的这个平台将能代 表该应用程序进行 HTTP 请求。例如,在 Adobe Flex 中就有一个帮助程序类,HTTPService,它可以创 建请求对象并发送 HTTP

凌众科技专业提供服务器租用、服务器托管、企业邮局、虚拟主机等服务,公司网站: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号