您可以捐助,支持我们的公益事业。

1元 10元 50元





认证码:  验证码,看不清楚?请点击刷新验证码 必填



  求知 文章 文库 Lib 视频 iPerson 课程 认证 咨询 工具 讲座 Modeler   Code  
会员   
 
   
 
 
     
   
 订阅
  捐助
GForms展现服务云开发平台
 
作者:孙健波 来源:InfoQ 发布于 2015-04-14
  2260  次浏览      14
 

GForms完全基于开放标准,使用XForms作为面向服务的架构简单易用的前端,帮助用户跨多个行业加速数据整合。GForms提供可视化设计器,实现展现服务开发中数据与模型完全分离,加快开发速度快速投入市场,同时降低开发风险,并且有利于后续系统维护。

GForms是您构建和部署展现服务的解决方案,它能够处理复杂展现服务中的大量表单复杂校验及计算,所有企业应用领域都有适合。

1、产品概述

GForms开发平台让开发人员甚至非技术人员在短短几分钟内创建全功能的展现服务,让开发团队更加适应客户和市场的需求,从而提高客户服务和速度实现收益。

GForms提供展现服务可视化开发、部署、运行平台:

开发平台:开发平台基于开放的、深受广大开发人员喜欢的Eclipse研发,可以与svn、cvs等版本控制器结合实现版本管理。通过使用GForms设计器能够快速构建和部署全功能的Web窗体应用程序。

运行时:运行时包含各类GForms展现服务的转换处理,把xforms文件转换为html文件,也就是说运行时其实gforms文件是一个静态的html文件。静态文件就意味着客户端不用每次都到后端请求gforms文件,而可能缓存到用户浏览器中,不用每次都动态的去构建展现页面,提高响应效率及用户体验;

2、系统架构

为了不破坏开发人员的开发习惯,如现有的开发工具、技术体系及应用运行环境,GForms开发平台设计器基于Eclipse研发,同时开发人员可以沿用既有技术体系(如后端服务实现、前端样式渲染/展现逻辑控制,甚至可以直接使用jsp、html等技术),GForms应用其实就是一个web应用,最终会被部署到Web或J2EE服务器,如Tomcat、weblogic、websphere application server中。

GForms开发平台使用开放的技术架构:设计器基于Eclipse,运行时基于J2EE,如下图所示:

3、GForms设计器

GForms设计器时创建及编辑表单的图形设计工具,提供可视化、拖拽式、直接预览的引人入胜的开发环境。

GForms设计器完全实现了xforms标准,是可视化的、拖拽的,非常简单容易上手的开发高效工具。

整个GForms设计器包括:

控件面板:存放GForms所直接支持的、可拖拽的控件。

视图:各种配置视图,如控件属性视图、XForms核心模块(数据模型、模型实例、提交、绑定、动作等)视图及web服务视图。

视图配置属性:配置视图中各个元素的属性信息。

3.1、控件类型

GForms提供41个开箱即用控件:17个基础控件、8个复合控件、11个扩展控件、6个图形控件及web服务控件,同时还提供对话框、向导、tooltip等通用组件。

同时为了方便展现服务开发及编程,我们额外还为编程包装了一些的强大工具组件,如对话框、向导、tooltip等。

基础控件:与一个模型实例节点绑定,包括输入框、输出框、按钮、密码、标签、文本域、复选框、复选框列表、单选框列表、组合框、列表、日期、图片、上传、iframe、富文本及值域

复合控件:与模型实例的多个节点绑定,可以含有其他任意控件,包括按钮组、分组、分组框、表格、树、页签、重复容器、工件查看器

扩展控件:GForms对标准进行扩展的控件,使用场景相对较少,包括日历、评分、代码片段、进度条、web链接、颜色选择器、fieldset、滑动条、横向菜单、下载、上下文菜单等

图形控件:几乎支持所有的图形类型,系列图、XY图形、雷达图、饼图、漏斗图、仪表盘

Web服务:使用后端提供的web服务,根据wsdl文件或web服务URL创建web服务展现

3.2、GForms XPath编辑器

GForms平台提供XPath编辑器,辅助开发人员开发xpath表达式。

我们提供的XPath编辑器支持XPath1.0、XForms 1.1、GForms 1.0标准。

分为三个区域:选择区域、编辑器区域及问题显示区域。

其中,选择区域:

模型实例树:包含所有的模型实例数据节点,包括属性及元素,如果需要选择某个节点请双击或拖拽到编辑器区域即可。

函数树:包含所有的xforms1.0及xforms1.1所支持的所有xpath,每个函数具体使用说明请参考相关xpath手册。

操作符树:xpath所支持的操作。

设计器中的UI控件与模型实例是通过xpath进行关联的,我们为了降低xpath表达式开发难度,我们提供了一个可视化的xpath编辑器;
通过双击或拖拽上面3棵树中的节点到中间区域自动生成xpath表达式,同时,开发人员可以手动调整xpath表达式,如果编辑xpath的过程中存在问题,则会在问题区域给出错误提示。

4、典型控件

本节列举几个常用的复杂控件,让用户加深对GForms开发平台的了解。

4.1、树控件

研发时参考了JQuery Ztree等流行的树实现,但是我们更加灵活,因为我们对后端服务没有任何格式要求,真正实现数据与展现分离,同时支持XML及json。

树的设计态如上图所示,点击预览后的效果图如下所示:

GForms提供的树控件具备如下特点:

1.支持动态加载;

2.支持JSON、XML数据格式;

3.支持checkbox、radio;

4.支持展现配置:连线、图片;

5.API及事件处理;

6.对后端服务没有格式要求

4.2、表格控件

GForms提供的表格满足各类应用场景需求,对比目前比较流行的jquery flexgrid,我们提供了xml、json两种数据结构、支持数据在线填写、支持表格列锁定等重要功能。

表格的设计态如上图所示,点击预览后的效果图如下所示:

GForms提供的表格控件具备如下特点:

1.xml、json

2.列冻结、右键菜单

3.2种分页机制、ajax

4.完善的API及事件处理

5.表格列上下文菜单

6.自定义toolbar

7.展现表格及编辑表格

8.列支持18种控件类型

9.支持button group

4.3、图形控件

在GForms中图形更加简单易用,支持json、xml格式,同时GForms开发平台所提供的图形区分为6种大类型,而每种类型图形支持100多项配置,足以应答各种业务场景。

一些图形样例如下所示:

5、XForms核心模块

XForms中的核心模块是展现服务的模型及控制部分,是控制中心,是减少或消除手动编码的核心所在。

模型视图:管理展现服务中所有的数据模型、模型实例、绑定、提交及动作等。

模型实例视图:在该视图中维护模型实例XML结构(其实还支持JSON格式)。

绑定配置:用于定义数据的约束,包括只读、依赖关系、值计算公式、数据类型(介绍GForms所支持的数据类型:xsd+xforms数据类型+自定义类型):

提交:是展现服务与后端服务数据交换的纽带,支持rest api接口调用。

动作:标准的16个动作+自定义的1个操作。可以直接通过配置使用,降低编程难度、消除重复编码。

6、web service支持

GForms开发平台直接对soap/http web service提供支持,可以通过web服务的WSDL文件或web服务的URL来启动web服务开发支持。

第一步:选择或录入web 服务地址

第二步:选择需要构建的服务、端口及操作

当向导完成后,可以在web服务视图中对引入的web服务进行可视化管理。

通过从web服务视图中拖拽节点到设计器区域,上下web服务UI的构造。

7、应用发布

可以提高应用调试效率,减少文件手动拷贝的繁琐工作,展现服务及GForms工程其他任意文件,包括jar包等的任何变化都会同步更新到远程的服务器上,实现快速调试。

8、开发平台特点

非侵入式的开发平台、通过建模大幅减少编码、降低后期维护工作量:

1.简单易用、可视化、模型驱动展现服务开发

2.数据支持XML、JSON

3.直接支持图形、表格、树等复杂控件,同时编程方式支持向导、对话框、提示等控件。

4.支持在任何标准的J2EE中部署:Tomcat、weblogic、IBM WAS

5.跨浏览器运行:IE8及以上、chrome、firefox、safari

6.展现样式可以被轻松定制

7.大量可用的API及事件处理

8.提供大量资料文件,并提供功能相对完善的GFormsDemo应用供技术人员开发参考

9.计算公式基于xpath表达式:可以用来轻松创建动态的 Web 2.0 的表单界面,可以自定义验证器、计算器、表单提交动作和事件处理等。

9、开发平台优势

GForms开发平台提供了一种富有吸引力、交互式的用户体验,能够快速、轻松地创建出功能丰富的展现服务,并且在质量控制方面既降低了成本,又提高了效率。

GForms开发平台优势如上图所示,主要有四方面的优势:

1. 展现服务可视化:

随着云计算的发展,IT从业人员的形态将发生巨变,可能任何人都可以通过云计算平台开发自己的应用并产生收入,所以一个简单、快捷的开发平台非常关键。

我们提供可视化的拖拽式开发环境、提供配置化的展现开发,能消除开发人员之间的技术差异、理解差异,特别是能够快速响应需求变化、提高后续系统维护性。

可视化降低后期维护成本,在项目研发,特别是产品研发中,随着版本的增多,后期调整展现服务非常困难,开发人员总有“还不如重新做”的想法。

2. 展现服务理念:

云计算的核心之一是服务,在云计算中,其实任何东西都可能成为服务,如大家所熟知的存储服务、计算服务、IP服务、web服务等,其实展现也是一种服务类型,是是可以成为交易的商品类型。

同时展现服务理念,能够让实现展现与后端业务服务的松耦合。

3. 模型驱动:

我们提供可视化模型驱动的展现开发,能够大幅度降低硬编码量,保守估计能够减少60%的硬编码工作量,编码量减少就意味着可维护性好。

4. 基于开放标准及开发技术:

开发标准及技术意味着产品的成熟度高,有广泛的行业认可,同时也可以屏蔽私有标准的封闭性,GForms基于开放标准及开发技术,技术人员认可并且提高可维护性。

云计算带来了全新的业务模式及商业机会,而云计算的核心是服务、集成,所以标准、开放架构非常重要。

同时我们认为未来的企业业务系统将更多的以SaaS云计算模式诞生,只有基于开放的标准才能保证企业业务系统能够迁移到云环境中,并产生增值。

   
2260 次浏览       14
 
相关文章

云计算的架构
对云计算服务模型
云计算核心技术剖析
了解云计算的漏洞
 
相关文档

云计算简介
云计算简介与云安全
下一代网络计算--云计算
软浅析云计算
 
相关课程

云计算原理与应用
云计算应用与开发
CMMI体系与实践
基于CMMI标准的软件质量保证
最新课程计划
信息架构建模(基于UML+EA)3-21[北京]
软件架构设计师 3-21[北京]
图数据库与知识图谱 3-25[北京]
业务架构设计 4-11[北京]
SysML和EA系统设计与建模 4-22[北京]
DoDAF规范、模型与实例 5-23[北京]

专家视角看IT与架构
软件架构设计
面向服务体系架构和业务组件的思考
人人网移动开发架构
架构腐化之谜
谈平台即服务PaaS
更多...   
相关培训课程

云计算原理与应用
Windows Azure 云计算应用

摩托罗拉 云平台的构建与应用
通用公司GE Docker原理与实践
某研发中心 Openstack实践
知名电子公司 云平台架构与应用
某电力行业 基于云平台构建云服务
云计算与Windows Azure培训
北京 云计算原理与应用