[发明专利]一种flex无服务器调用外部程序的方法及系统有效
申请号: | 201410602539.4 | 申请日: | 2014-10-31 |
公开(公告)号: | CN104363273B | 公开(公告)日: | 2018-04-03 |
发明(设计)人: | 罗国俊 | 申请(专利权)人: | 北京思特奇信息技术股份有限公司 |
主分类号: | H04L29/08 | 分类号: | H04L29/08 |
代理公司: | 北京轻创知识产权代理有限公司11212 | 代理人: | 杨立 |
地址: | 100086 北京市海淀*** | 国省代码: | 北京;11 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 flex 服务器 调用 外部 程序 方法 系统 | ||
技术领域
本发明涉及一种flex无服务器调用外部程序的方法及系统。
背景技术
Flex是一个高效、免费的开源框架,可用于构建具有表现力的Web应用程序,这些应用程序利用Adobe Flash Player和Adobe AIR,可以实现跨浏览器、桌面和操作系统。虽然只能使用Flex框架构建Flex应用程序,但Adobe Flash BuilderTM(之前称为Adobe Flex BuilderTM)软件可以通过智能编码、交互式遍历调试以及可视设计用户接口布局等功能加快开发。
Flex AIR程序具有良好的客户体验和安全沙盒机制,为众多开发者亲睐,但正是其沙盒机制使得flex程序无法调用本地程序,限制了其可扩展性。
针对此问题,以往的解决方案是额外搭建一个服务器(如tomcat或weblogic),将信息通过服务器传递请求,得到结果后再返回给客户端程序,这种方式加大了开发成本和开发难度,而且部署服务器本身也需要硬件支持和维护成本。
发明内容
本发明所要解决的技术问题是提供一种通过socket接口协议,将flexAIR安装所在的机器作为虚拟服务器,从而处理flex与外部程序的交互的flex无服务器调用外部程序的方法。
本发明解决上述技术问题的技术方案如下:一种flex无服务器调用外部程序的方法,具体包括以下步骤:
步骤1:flex创建socket连接;
步骤2:将socket连接封装为jar包,并为jar包创建一个对应的socket界面;
步骤3:接收外部程序发送的请求,通过socket接口调用jar包;
步骤4:jar包响应外部请求,创建socket通道,将外部请求转换为请求报文;
步骤5:socket通道根据请求报文的不同类型调用jar包中的不同操作方法进行操作,并生成操作结果;
步骤6:通过socket接口返回操作结果,结束。
本发明的有益效果是:本发明通过高度抽象,将flex程序与外部程序调用分开,flex只处理socket接口相关逻辑,外部调用由java处理,层次分明,开发、发布、部署都极为方便;针对需要调用外部资源的客户端的FlexAIR程序,无需耗费人力物力来部署额外的服务器;使用java来调用其他程序,跨平台性和扩展性加强。
本发明一方面可以降低开发成本,socket的jar包和flex连接socket的程序已编写完成;另一方面免去了部署服务器所需的硬件支持和维护成本,只需要维护Flex AIR程序即可;最后,如果需要扩展调用其他程序(如本地的bat程序、c程序、java程序、数据库处理等),只需要将相关程序在socket的jar包中增加即可,相当于是使用java调用了其他程序,由于外围使用java调用,所以其跨平台性也是极好的。
在上述技术方案的基础上,本发明还可以做如下改进。
进一步,所述jar包中包括数据库操作、文件操作和远程操作等多种操作方法。
进一步,步骤5中jar包中不存在对应报文类型的操作方法时,将对应此报文类型的外部操作方法添加到socket连接中,将完成添加的socket连接封装为jar包。
进一步,所述步骤4中创建的socket通道中包含jar包中的操作方法,具体包括C程序调用方法、Bat程序调用方法和数据库调用方法。
本发明所要解决的技术问题是提供一种通过socket接口协议,将flexAIR安装所在的机器作为虚拟服务器,从而处理flex与外部程序的交互的flex无服务器调用外部程序的系统。
本发明解决上述技术问题的技术方案如下:一种flex无服务器调用外部程序的系统,包括创建模块、封装模块、接收请求模块、请求转换模块、操作模块和结果返回模块;
所述创建模块用于使flex创建socket连接;
所述封装模块用于将socket连接封装为jar包,并为jar包创建一个对应的socket界面;
所述接收请求模块用于接收外部程序发送的请求,通过socket接口调用jar包;
所述请求转换模块用于使jar包回应外部请求,创建socket通道,将外部请求转换为请求报文;
所述操作模块用于使socket通道根据请求报文的不同类型调用jar包中的不同操作方法进行操作,并生成操作结果;
所述结果返回模块用于通过socket接口返回操作结果,结束。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于北京思特奇信息技术股份有限公司,未经北京思特奇信息技术股份有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201410602539.4/2.html,转载请声明来源钻瓜专利网。