移动Web程序的开发平台 Worklight

openkk 12年前

Worklight(以下简称 WL)作为一个移动程序的开发平台,通过三种模式(Web、混合、本地)支持了不同需求的客户端开发,但是面临的一个现实问题是如何和已有的系统进行良好 的集成。适配器(adapter)是平台的服务器端组件,作为一个传输层负责 WL 服务器和不同企业级后台的连接。通过平台支持的 HTTP 和 SQL 适配器,客户端应用可以与原有系统方便的进行数据访问,这减少了重复的开发工作。

移动Web程序的开发平台 Worklight

移动Web程序的开发平台 Worklight

适配器由三部分组成:基于 XML 的配置文件,用于定义适配器的类型和提供的方法;基于 JS 的方法实现文件,通过 Mozilla Rhino 解析器实现对不同后台的访问;基于 XSL 文件的数据转化规则,在 HTTP 适配器中存在,用于将获得的数据按照一定规则进行转化。

WL 支持的适配器提供了如下特性:

  • 快速开发:开发者可以使用便捷而强大的服务器端 JavaScript 创建简洁易读的代码,用于和不同后台程序的集成。
  • 只读操作和事务操作:平台通过适配器支持对后台系统的只读和事物操作。
  • 安全:适配器使用灵活的认证机制创建与后台的连接,使用的用户可以是系统用户也可以是事务中操作的用户。
  • 可扩展性:适配器通过 cache 机制减少了与后台系统的交互,并且通过配置,限定和后台系统建立的连接数。
  • 数据透明:适配器提供了获取后台数据的统一接口,这样开发者在获取数据时就不需要关注数据源、格式和传输协议信息。


图 1. 适配器架构
移动Web程序的开发平台 Worklight

图 1 描述了适配器和前台的 app 以及后台系统间数据交互的过程,具体的流程如下:

  1. 适配器暴露一系列的方法,称之为 procedures,前台 app 通过 Ajax 方式调用这些过程。
  2. 这些方法从后台获取相应信息。
  3. 后台系统返回的数据格式如下
    1. 如果格式为 JSON,WL 服务器直接返回。
    2. 如果格式不是 JSON,服务器将数据格式转化为 JSON 后,再返回。
  4. 这些方法将获得的 JSON 数据进行业务处理,将最终结果返回给 app。

项目主页:http://www.open-open.com/lib/view/home/1339978837705