热门标签 | HotTags
当前位置:  开发笔记 > 编程语言 > 正文

构建Flex数据服务程序

构建Flex数据服务程序当我们使用Flex数据服务来开发程序,我们利用加强的数据服务体系结构。这个话题包含Flex数据服务的一个概览。关于Flex数据服务我们通过添加
构建Flex数据服务程序

当我们使用Flex数据服务来开发程序,我们利用加强的数据服务体系结构。这个话题包含Flex数据服务的一个概览。

关于Flex数据服务
我们通过添加Flex数据服务构建基于FlexSDK的功能的程序。Flex数据服务包含企业信息支持,以及一个加强的数据服务体系。这些特性可以使得我们创建与部署充分利用Flex所提供的丰富的表现层的企业类程序。
Flex数据服务在我们的Java程序服务器上或是Java容器上执行,在下列特性上提供功能:
加强的数据服务
多个客户端的数据共享
客户到客户的数据通信支持
自动的服务器数据增加
客户访问服务器资源的认证
数据服务日志
加强的远程过程调用(RPC)功能

关于Flex数据管理服务
Flex数据管理服务是一个Flex数据服务特性,可以让我们创建使用发布的数据进行工作的程序。这个特性可以让我们构建提供数据同步,数据复制以及偶而连接程序服务器等功能的程序。另外,我们可以管理数据的大量连接以及嵌入的数据关系,例如一对一和一对多的关系,并且使用数据适配器来与数据源进行集成。
数据管理服务,消息服务以及Flex数据服务的RPC服务都是基于底层的消息部件的,如下图所示:

消息部件可以让一个Flex程序与消息目的地进行连接,向其发送消息,以及从其他的消息客户接收消息。这些消息客户端可以是Flex程序或是者是其他类型的客户端,例如Java消息服务(JMS)客户端。JMS客户端可以发布以及向同一个Flex程序消息目的地进行订阅。这意味着Flex程序可以在Java客户端程序之间进行消息交互。
消息部件使用一个服务器端消息服务和一个在Flex客户端程序的相应消息API。Flex客户端程序通过一个服务器上的端点集合来发送消息,消息服务然后将这些消息发送到一个主题。消息服务然后将这些消息广播回端点,然后发送到订阅这个主题的客户端程序。
Flex数据服务同时提供作为Flex消息服务的消息部件,这样我们就可以充分利用他来创建自己的程序。

关于Flex消息服务
Flex消息服务是建立在已建立的消息标准和术语上的。Flex消息服务提供了一个客户端API以及一个相应的服务器端消息服务用来创建Flex消息程序。消息服务同时也可以参与Java消息服务(JMS)。
消息系统通过在消息服务中传递称之为消息的数据包返回与前进,使得单个的程序平等的异步的进行交流。一个消息通常由一个消息头与一个消息体组成。消息头包含标识与路由信息。消息体包含程序数据。
发送消息的程序称之为生产者,而接收消息的程序称之为消费者。在大多数的有意义的系统中,生产者与消费者并不需要了解彼此的任何任何东西。生产者发送消息到指定的消息目的地,而消息服务器将这些消息转发到合适的消息消费者。
消息通道将生产者与消费者连接到消息目的地。要在一个特定的通道上发送消息,程序连接到与消息通道相关的消息端点上。消息端点是负责将消息数据编码为消息的代码,并且将消息解码为消费者可以用的格式。在一些消息系统中,一个端点可以将解码的消息发送到一个消息中介,然后消息中介将这些消息转发到合适的目的地。
消息适配器是扮演Flex消息服务与其他的消息系统之间管道的代码。例如,Java消息服务(JMS)适配器是可以让Flex程序向JMS主题与队列订阅的消息适配器。Java程序可以将消息发送到Flex,而Java代码可以响应Flex程序发送的消息。
下面的例子演示了由消息生产者发送到消息消费者的数据流。数据编码为消息,并且通过通道发送到目的地。这个消息然后通过通道发送到消息消费者并且解码为消费者可用的数据。

发布-订阅消息
Flex支持发布-订阅消息,也就是所谓的基于主题的消息。在Flex消息服务中,主题是与消息服务目的同义的。在发布-订阅消息中,每一个消息可以有多个消费者。当我们希望多于一个的消费者来接收同一个消息时我们可以使用这种类型的消息。使用发布-订阅消息的程序例子如拍卖站点,股票报价服务,以及其他的需要将一个消息发磅到多个订阅者的程序。
生产者向消息服务器上指定的主题发布消息,而消费向这个主题订阅来接收消息。消费者只可以消费那些向他所订阅的主题发布的消息。
下面的例子演示了一个简单的发布-订阅消息流:

在程序中使用Flex数据服务
Flex提供了MXML以及ActionScript API可以让我们在我们的程序中使用Flex数据服务。我们可以创建扮演生产者,消费或是者同时是二者的程序。Flex数据服务程序通过在Flex服务器上声明的通道发送消息到同时在Flex服务器上声明的目的地。
Flex数据服务使用XML配置文件来管理服务器上的消息主题也队列。作为消息配置的一部分,我们可以设定消息的最大尺寸。如果消息超过了这个最大值,就会使用多个消息分支,在客户端将这些单个的消息重新进行组合。这就允许了跨网络的异步的消息调度。

关于RPC服务
Flex数据服务包含配置RPC服务的远程服务以及代理服务。这些特性基于Flex 2 SDK中可用的RPC服务。
使用仅在Flex 2 SDK中可用的RPC服务组件
我们可以使用Flex 2 SDK而不需要Flex数据服务来创建程序,这个程序可以直接调用HTTP服务或是网络服务而不需通过服务器端的代理服务。我们不可以在没有Flex数据服务的情况下使用远程对象组件。在默认情况下,Flash播放器不允许从与程序不在同一个服务器的域获取数据。所以RPC服务或者是与程序服务器在同一个域,或者是远程服务器定义了crossdomain.xml文件。
一个crossdomain.xml文件是一个XML文件,这个文件提供了一种方法来标识他的数据或是文档对于特定域或是所有域的SWF文件可用。crossdomain.xml文件必须位于Flex程序服务器的根。
配合Flex数据服务使用RPC服务组件
当我们要提供企业级功能时我们可以使用Flex数据服务,例如从不同域的服务阻塞代理,客户认证,允可的RPC服务URL判优,服务器逻辑,本地化支持,以及RPC服务的集中管理。Flex数据服务同时允许我们使用远程对象组件来访问远程Java对象,而不需要将他们配置为SOAP适应网络服务。
当我们使用Flex数据服务时,并不是直接访问服务器,RPC服务组件访问目的地。目的地是可管理的服务端点,可以让我们通过基于XML的服务器端来进行管理。

关于开发环境
我们将Flex数据服务的服务器端代码以及程序文件存储在J2EE适应程序服务器或是Servlet容器的标准网络程序的目录结构中。MXML的部署模型与JSP相似。我们在我们的文本编辑器中创建MXML文件,然后将其放置在由网络浏览器可以直接访问的网络程序目录中。例如,我们可以将MXML文件放在网络程序的根目录或是子目录中,而不是保留的WEB-INF目录中。
标准的Flex网络程序的目录结构如下表所示:
web_app  包含WEB-INF目录以及由用户浏览器可以访问的所有文件,例如MXML文件,JSP,HTML页面,CSS,图像以及Javascript文件。我们将这些文件直接放在网络程序的根目录或是不使用保留的WEB-INF的子目录中。
/WEB-INF 包含标准的网络程序的部署描述(web.xml)。
/WEB-INF/flex 包含Flex配置文件
/WEB-INF/flex/user_class 包含自定义的ActionScript类和MXML组件
/WEB-INF/lib 包含在JAR文件中的Flex服务器代码
/WEB-INF/flex/frameworks 包含SWC组件文件,例如包含Flex程序框架文件framework.swc和rpc.swc


推荐阅读
  • Spring框架《一》简介
    Spring框架《一》1.Spring概述1.1简介1.2Spring模板二、IOC容器和Bean1.IOC和DI简介2.三种通过类型获取bean3.给bean的属性赋值3.1依赖 ... [详细]
  • Java序列化对象传给PHP的方法及原理解析
    本文介绍了Java序列化对象传给PHP的方法及原理,包括Java对象传递的方式、序列化的方式、PHP中的序列化用法介绍、Java是否能反序列化PHP的数据、Java序列化的原理以及解决Java序列化中的问题。同时还解释了序列化的概念和作用,以及代码执行序列化所需要的权限。最后指出,序列化会将对象实例的所有字段都进行序列化,使得数据能够被表示为实例的序列化数据,但只有能够解释该格式的代码才能够确定数据的内容。 ... [详细]
  • XML介绍与使用的概述及标签规则
    本文介绍了XML的基本概念和用途,包括XML的可扩展性和标签的自定义特性。同时还详细解释了XML标签的规则,包括标签的尖括号和合法标识符的组成,标签必须成对出现的原则以及特殊标签的使用方法。通过本文的阅读,读者可以对XML的基本知识有一个全面的了解。 ... [详细]
  • 本文介绍了Web学习历程记录中关于Tomcat的基本概念和配置。首先解释了Web静态Web资源和动态Web资源的概念,以及C/S架构和B/S架构的区别。然后介绍了常见的Web服务器,包括Weblogic、WebSphere和Tomcat。接着详细讲解了Tomcat的虚拟主机、web应用和虚拟路径映射的概念和配置过程。最后简要介绍了http协议的作用。本文内容详实,适合初学者了解Tomcat的基础知识。 ... [详细]
  • flowable工作流 流程变量_信也科技工作流平台的技术实践
    1背景随着公司业务发展及内部业务流程诉求的增长,目前信息化系统不能够很好满足期望,主要体现如下:目前OA流程引擎无法满足企业特定业务流程需求,且移动端体 ... [详细]
  • 本文讨论了如何使用Web.Config进行自定义配置节的配置转换。作者提到,他将msbuild设置为详细模式,但转换却忽略了带有替换转换的自定义部分的存在。 ... [详细]
  • Servlet多用户登录时HttpSession会话信息覆盖问题的解决方案
    本文讨论了在Servlet多用户登录时可能出现的HttpSession会话信息覆盖问题,并提供了解决方案。通过分析JSESSIONID的作用机制和编码方式,我们可以得出每个HttpSession对象都是通过客户端发送的唯一JSESSIONID来识别的,因此无需担心会话信息被覆盖的问题。需要注意的是,本文讨论的是多个客户端级别上的多用户登录,而非同一个浏览器级别上的多用户登录。 ... [详细]
  • 开发笔记:spring boot项目打成war包部署到服务器的步骤与注意事项
    本文介绍了将spring boot项目打成war包并部署到服务器的步骤与注意事项。通过本文的学习,读者可以了解到如何将spring boot项目打包成war包,并成功地部署到服务器上。 ... [详细]
  • OpenMap教程4 – 图层概述
    本文介绍了OpenMap教程4中关于地图图层的内容,包括将ShapeLayer添加到MapBean中的方法,OpenMap支持的图层类型以及使用BufferedLayer创建图像的MapBean。此外,还介绍了Layer背景标志的作用和OMGraphicHandlerLayer的基础层类。 ... [详细]
  • Jboss的EJB部署描述符standardjaws.xml配置步骤详解
    本文详细介绍了Jboss的EJB部署描述符standardjaws.xml的配置步骤,包括映射CMP实体EJB、数据源连接池的获取以及数据库配置等内容。 ... [详细]
  • Struts2+Sring+Hibernate简单配置
    2019独角兽企业重金招聘Python工程师标准Struts2SpringHibernate搭建全解!Struts2SpringHibernate是J2EE的最 ... [详细]
  • ①页面初始化----------收到客户端的请求,产生相应页面的Page对象,通过Page_Init事件进行page对象及其控件的初始化.②加载视图状态-------ViewSta ... [详细]
  • 阿里首席架构师科普RPC框架
    RPC概念及分类RPC全称为RemoteProcedureCall,翻译过来为“远程过程调用”。目前,主流的平台中都支持各种远程调用技术,以满足分布式系统架构中不同的系统之间的远程 ... [详细]
  • 1.WebServicea.定义:WebService是一种跨编程语言和跨操作系统平台的远程调用技术b.三大技术:XMLXSD,SOAP, ... [详细]
  • 那么多优秀的自动化测试工具,而你只知道Selenium?
    如今,作为一名软件测试工程师,几乎所有人都需要具备自动化测试相关的知识,并且懂得如何去利用工具,来为企业减少时间成本和错误成 ... [详细]
author-avatar
手机用户2502893675
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有