使用BlazeDS和AMF构建Web和桌面应用

Flex + BlazeDS集成技术实践指南 Flex框架,全称为Adobe Flex,是一个开放源代码的开发框架,主要用于开发跨平台的富互联网应用(RIA)。它允许开发者使用MXML(一种基于XML的标记语言)与ActionScript(基于ECMAScript标准的编程语言)来创建具有丰富用户界面的Web应用。Flex最初由Macromedia公司开发,后被Adobe收购。它的设计初衷是为了提供一个更加高效、直观和强大的开发工具,使得开发者可以快速创建出响应快速、表现力强的应用程序。 阅读详情
    无论是采用Adobe AIR技术的桌面应用程序 ,还是结合Flash Player使用浏览器的应用,在需要加载或处理数据的时候往往都需要连接到服务器。在采用Adobe Flex或Flash CS3来开发应用程序的过程中,应用程序与服务器间交互的实现方式有很多选择。服务器本身除了可以运行Java、ColdFusion、.Net、 PHP、Ruby等某种服务器端技术之外,还必须具备网络通信的能力,这为Flash Player中运行的应用或Adobe AIR应用的客户端与服务器端间的交互奠定了基础。通常,两者间的通信采用的是HTTP协议-- 也就是web浏览器加载web页面和应用时所采用的协议。但是,HTTP协议下采用不同的数据传输方式会带来应用性能和开发效率的天壤之别。

很多在Abode AIR或Flash Player中运行的应用都采用XML-over-HTTP技术(比如SOAP、REST等)在客户端和服务器之间传输数据。这个方法很简单,也很容易搭 建。无论是哪种服务器端技术都很容易应用XML,因为XML完全是一个基于文本的协议。在必须实现透明协议的时候,XML是完美的选择。比 如,Flickr的web服务在HTTP传输之上采用的就是REST风格的XML。这样一来,无论是谁采用哪种技术都可以简单地通过向Flickr发送简 单的基于文本的请求来与Flickr交互。Flickr的回复是简单的XML,开发者可以轻松地解析这个XML回复,使用其中的数据。像XML这样基于文 本的协议的缺点是额外的数据抽象层的编写与维护工作相对很沉重。此外,如果数据需要序列化和反序列化,那么这个数据抽象层在客户端和服务器端都会占用很多 资源(参见图1)。

图1. AMF减少封送处理的数据层

Flash Player可以支持另外一种传输协议,这个协议能够缓解由基于文本的协议导致的传输瓶颈问题,能够帮助开发者以更简单的方式与服务器交互。这就是 AMF(Action Message Format)。它是一个二进制格式的协议,能够替代用于传输XML的基于文本的协议而在HTTP协议之上交换数据。采用AMF的应用中,数据抽象层完全 可以省去,客户与服务器间的通讯效率比传统的应用基于文本的协议传输要高得多。Census RIA Benchmark应用程序可以证明AMF带来的性能优势。

过去几年里,大量旨在提供AMF实现的开源项目蜂拥而至,这些项目与Macromedia之前一个叫做Flash Remoting的产品很相似。由于这些开源项目,无论是PHP、Java还是其它技术的开发人员都得以能够在他们的应用中采用AMF。Flex 1.0版本发布的时候,就涵盖了AMF相关功能。Flex发布版本2的时候同时包含了XML和AMF的相关功能,但服务器端的AMF相关功能却特别转移到 Flex Data Services这个新产品中。Flex Data Services在集成到Live Cycle产品系列中的时候又被重新命名为LiveCycle Data Services。针对单个CPU服务器的LiveCycle Data Services ES Express是免费的,但针对拥有多个CPU服务器的产品则收费很高,这使得一些开发者在选择AMF的时候望而却步,其中一些人也因此干脆转而选择一些 非标准的AMF实现。

2007年十二月,Adobe做出了两个巨大的决策,让所有人都能够使用AMF。第一个决定是公开AMF规范。规范公布以后,所有项目都能按照规范 来实现 AMF,而不用再对协议做反向工程。无论back-end采用的是Java、ColdFusion、PHP、.Net、Ruby还是其它技术,AMF的实 现都只需要遵守规范即可。另一个决策是以BlazeDS项目的方式开源LiveCycle Data Services ES中的部分技术。

BlazeDS中包含了AMF的Java实现,可以用来与服务器端的Java对象远程交互,也可以用来在客户端之间传递消息。开发人员可以借助 BlazeDS的远程技术简单地调用POJO、Spring服务或EJB方法。开发人员可以通过其消息系统从客户端向服务器端发送消息,当然也可应从服务 器端向客户端发送消息。BlazeDS也可以与其他一些消息系统结合使用,比如JMS、ActiveMQ。由于其远程技术与消息系统采用的方式是在 HTTP协议上传输AMF数据,BlazeDS因此在性能上拥有很大优势,同时也避免了额外的数据抽象层的处理工作。BlazeDS在很多基于Java的 应用服务器环境下都能正常工作,这些服务器包括Tomcat、WebSphere、WebLogic、JBoss以及ColdFusion。此外,无论是 web(在Flash Player中运行)还是桌面(在Adobe AIR下运行)的Flex应用程序中,BlazeDS的使用都很简单。

开发人员现在可以从Adobe Labs站点上下载预发布版本, 将blazeds-samples.war文件部署到任何一个servlet容器中,就开始你使用BlazeDS开发的旅程了。这个web应用包中提供了 很多预配置的示范应用,所有这些应用都可以通过http://localhost:8080/blazeds-samples/ (端口号由你所使用的应用服务器和服务器配置所决定)来访问。

你可以遵循下面的步骤向应用程序中引入BlazeDS远程服务:

  1. 创建一个新的POJO Java类,这个类中需要包含你想要从Flex应用访问的方法
  2. 在remoting-config.xml文件中配置BlazeDS的远程终端
  3. 创建一个使用RemoteObject类的Flex应用

若要使用BlazeDS消息服务,则需要下列步骤:

  1. 在messaging-config.xml文件中创建消息服务的终端
  2. 创建一个使用Producer和Consumer类来接收消息的Flex应用
  3. 通过注册Consumer的消息feed来监听消息。

这下就可以使用BlazeDS高效地向back-end的Java类发送远程请求了,也可以应用BlazeDS的消息系统了。接下来,我们将在Eclipse和Flex Builder环境下详细讨论上面提及的步骤。在开始之前,你需要安装几个软件:

创建一个简单的远程应用:

  1. 从BlazeDS中将blazeds.war解压到应用服务器的部署目录下。比如,在JBoss下,解压到 /server/default/deploy/blazeds.war
  2. 启动Eclipse和Flex Builder
  3. 创建一个新的Java项目来配置BlazeDS,向web应用中添加Java类。
    1. 将项目命名为“blazeds_server”
    2. 从现有资源中创建该项目,使用先前部署的BlazeDS WAR的WEB_INF文件夹路径,比如: /server/default/deploy/blazeds.war/WEB-INF/
    3. 在build路径下添加src目录
    4. 将WEB-INF/classes目录作为输出目录
  4. 创建一个名为HelloWorld.java的新Java类,类的定义为:
  5. public class HelloWorld {
    public String sayHello(String name) {
    return "hello, " + name;
    }
    }
  6. 修改BlazeDS配置,使它支持向HelloWorld远程发送请求。这需要在WEB-INF/flex文件夹下的config.xml文件中添加消息终端的配置,具体配置可参照如下代码:
    <destination id="HelloWorld">
    <properties>
    <source>HelloWorld</source>
    </properties>
    </destination>
  7. 启动应用服务器,确定web应用可以通过下面这个地址访问(端口号由应用服务器配置决定):http://localhost:8080/blazeds/
    (假如服务器配置并未允许显示目录下的内容的话,你会得到404错误,但这没什么关系)
  8. 创建一个新Flex项目
    1. 将项目命名为“testHelloWorld”,应用服务器类型则选择“J2EE”
    2. 选择“Use remote object access service”和LiveCycle Data Services
    3. 将WAR文件部署的位置声明为根目录
    4. 将根ULR声明为:http://localhost:8080/blazeds(端口号由应用服务器配置决定)
    5. 将上下文根目录声明为:/blazeds
    6. 确定配置并点击“完成”
  9. 创建Flex应用,将下列代码替代testHelloWorld.mxml中的内容:
    <?xml version="1.0" encoding="utf-8"?>
    <mx:Application xmlns:mx="http://www.adobe.com/2006/mxml">
    <mx:RemoteObject id="ro" destination="HelloWorld"/>
    <mx:TextInput id="n" change="ro.sayHello(n.text)"/>
    <mx:Label text="{ro.sayHello.lastResult}"/>
    </mx:Application>
  10. 运行该应用,在文本框中输入你的名字,文本框的正下方你可以看到“hello, <你的名字>”,如下图所示:

注释:该Flex应用使用了RemoteObject类库来与支持BlazedDS的服务器通信。当用户在文本框中输入内容的时候,文本框的 change事件促使RemoteObject向服务器发出请求。于是,服务器紧接着向定义了的远程终端Java类发送请求,这个时候也有可能调用 Spring服务或者EJB session bean,但本例调用的是POJO。本例中,POJO的返回值仅仅是在向它发送的值之前添加了“Hello,”的字符串。在对象返回值的时候,这个返回值 会系列化到AMF中,进而返回给Flex应用。然后,RemoteObject类库将该值赋值给ro. .lastResult属性(本例中,则是 ro.sayHello.lastResult)。最后的结果也可以通过RemoteObject上的result事件获得。数据绑定的过程中,文本框的标签就相应显示为POJO返回的字符串。BlazeDS同时也支持Java对象类的传递。

下一步,我们将创建一个使用BlazeDS消息系统的Flex应用。

  1. 首先,在WEB-INF/flex目录下的messaging-config.xml文件中添加消息终端配置。添加下面这个终端:
    <destination id="chat"/>

    消息终端的配置使得消息系统能够将消息转发给正在监听该终端消息的客户。消息终端可以配置持久时间和网络参数,同时也可以连接到其它的消息系统,比如JMS。
  2. 重新启动应用服务器,这样一来,BlazeDS会配置新的消息终端。
  3. 创建一个新Flex项目
    1. 将项目命名为“testChat”
    2. 应用服务器类型选择“J2EE”
    3. 选择“Use remote object access service”和LiveCycle Data Services
    4. 将部署的WAR文件位置声明为Root目录
    5. 将根URL声明为:http://localhost:8080/blazeds(端口号由应用服务器配置决定)
    6. 将上下文根目录声明为:/blazeds
    7. 确定配置并点击“完成”
  4. 创建一个简单的使用消息系统的聊天应用程序,用下列代码替代testChat.mxml中内容:
    <?xml version="1.0" encoding="utf-8"?>
    <mx:Application xmlns:mx="http://www.adobe.com/2006/mxml" creationComplete="cons.subscribe()">

    <mx:Script>
    import mx.messaging.messages.AsyncMessage;
    </mx:Script>
    <mx:Producer id="prod" destination="chat"/>
    <mx:Consumer id="cons" destination="chat" message="c.text += event.message.body.msg + '/n'"/>

    <mx:TextArea id="c" width="300" height="300"/>
    <mx:TextInput id="m"/>
    <mx:Button label="Send" click="prod.send(new AsyncMessage({msg: m.text}))"/>

    </mx:Application>
  5. 运行该应用。在页面底部的文本框中输入一条消息,点击“Send”。确定所发送的消息正确显示在第一个文本域中,同时确定在打开多个浏览窗口的前提下,消息也可以在这些窗口间传递。

注释:Producer对象允许Flex应用向消息系统中发送消息。另外,还有一个Java API(本例中没有用到)也可以用来向服务器上的消息系统发送消息。通过第三方适配器或服务器自带的JMS适配器,你也可以将自身的消息系统连接到其它的 消息系统,但默认配置并不支持它与另外的消息系统的连接。用户点击“Send”的时候,某个匿名对象会创建一条新消息,并将消息体中的msg属性值设置为 文本框中输入的内容。由于消息的类型是AsyncMessage,所以AsyncMessage类是必需引入的。Consumer对象使得Flex应用能 够监听消息。应用会在其初始化的时候在消息系统中进行注册,之后,一旦收到消息,Consumer上的事件处理器则会将从消息体中取得聊天消息显示在文本 域中。

BlazeDS和AMF的使用可以帮助减短开发周期,推动应用运行的速度。何不尝试一下BlazeDS,我们很期待你的反馈。在Adobe Labs站点的BlazeDS页面上,你可以找到很多BlazeDS的相关内容以及AMF的公开规范说明。

关于作者

James Ward是Adobe的Flex技术传道士,也是Adobe在JSR 286、299和301规范制定中的JCP代表。他喜欢登山,也喜欢编程,因为两者都能给他带来无尽的发现、漂亮的解决方案、巅峰与峡谷。出于对登山冒险 的热爱,他去过很多地方。同样,技术也带给他许许多多的冒险经验,比如九十年代早期的Pascal和Assembly;Perl、HTML、九十年代中期 的JavaScript;之后就是九十年代后期的Java和相关的开发框架。如今,他主要在以基于Java的back-end的基础上使用Flex来创建 华丽的前端应用。在加入Adobe之前,James为Pillar Data Systems开发了市场和客户服务的富客户端portal应用。James Ward的博客是:http://www.jamesward.org。

hashank Tiwari是Saven Technologies的主要技术开发员。Saven Technologies的总部位于芝加哥,主要为银行及金融服务机构提供由前沿技术开发的业务解决方案。Shashank是一个多产的技术开发员、作者 以及演讲者,他在JCP的表现极为积极,并且是JSR 274、283、299、301和312规范的专家组成员。他经常在使用的编程语言至少有一打,包括Java、ActionScript、Python、 Perl、PHP、C++、Groovy、JavaScript、Ruby和Matlab。他在O'Reilly Network的博客也很受欢迎。最近,他正忙于创建使用了Flex和Java的web 2.0应用。www.shanky.org上有他更多的资料。

阅读英文原文:Building Web and Desktop Applications with BlazeDS and AMF


n8n 快速入门1:构建一个简单的工作流 n8n 快速入门指南 阅读详情

相关推荐

S32K系列之PDB框图详解及PDB触发ADC

可编程延迟模块PDB,PDB可提供从内部或外部触发或可编程间隔信号到ADC硬件触发输入的可控制延迟。 PDB可以选择提供脉冲输出,用作CMP块中的采样窗口。 S32K系列的PDB资源如下表: PDB功能框图 在下图中,以下字母表示的意义: N:PDB通道的总数 n:PDB通道号,范围从0到N-1 M:每个PDB通道的总可用预触发 m:预触发编号,范围从0到M-1 Y:脉冲输出的总数 y:脉冲数...

zz56z56的博客 1万+

flex和blazeds_使用BlazeDS和AMF构建Web和桌面应用程序

flex和blazeds 使用Adobe AIR在桌面上运行的应用程序或使用Flash Player在浏览器中运行的应用程序通常在需要加载或处理数据时连接到服务器。 使用Adobe Flex和Flash CS3之类的工具构建这些应用程序的开发人员具有多种选择,可以使他们的应用程序与服务器进行通信。 服务器本身可以运行Java,ColdFusion,.Net,PHP,Ruby或任何其他服务器端技术...

cunfu6353的博客 387

Spark on Yarn 高可用模式部署流程

本文介绍了如何配置Spark和Yarn的高可用(HA)环境,以确保在大规模数据处理中避免单点故障。

xhaoDream的博客 1444

Flex BlazeDS在Java中进行AMF数据封装通信

<!--google_ad_client = "pub-7343546549496470";/* 468x15 横链接单元 */google_ad_slot = "5785741422";google_ad_width = 468;google_ad_height = 15;//-->使用RSS订阅本Blog    F

小李专栏 6690

【spark源码修改】hive3.1.3 spark3.5.4编译,需要修改源码,最终编译成功

【spark源码修改】hive3.1.3 spark3.5.4编译,需要修改源码,最终编译成功,附带问题分析详细过程

spark_dev的博客 1912

Unity事件总线第一篇:为什么你的游戏需要一个事件总线?

本文探讨了游戏开发中常见的跨模块调用导致代码强耦合的问题。通过一个攻击按钮触发角色攻击、怪物掉血和血条更新的案例,分析了直接调用方式带来的维护困难、扩展性差和模块重用性低等弊端。文章提出使用事件总线(Event Bus)作为解决方案,通过发布-订阅模式实现模块解耦。重构后的代码中,各模块只需与事件总线交互,彼此不再直接依赖。这种设计使得新增功能(如音效)无需修改现有代码,大大提高了系统的可维护性和扩展性,同时增强了模块的重用性,完美体现了开闭原则。

qq_46348216的博客 1298

Flex与Java之间的AMF通信-BlazeDS框架的使用

<br />关于Flex与后台之间的通信,我想大家已经了解很多了,关于BlazeDS框架的使用,介绍还很少,并且还很不全面,今天我们一起来研究一下如何使用BlazeDS框架让Flex与Java进行通信。<br />1.0.下载BlazeDS框架,下载集成Tomcat服务器的版本http://flexorg.wip3.adobe.com/blazeds/4.x/milestone/14931/blazeds-turnkey-4.0.0.14931.zip 或者单独的版本http://flexorg.wip3

wbn1984的专栏 3560

到底什么是Harness工程?一篇文章从入门到企业落地全解析

随着OpenClaw爆火,Harness Engineering(驾驭工程)成为AI编程时代的热门概念,很多小白对其感到陌生。本文用通俗类比和真实案例,避开复杂术语,从基础定义入手,讲清Harness Engineering的核心逻辑——人类工程师设计“约束系统”(马具),让AI模型(烈马)安全高效地完成代码工作,同时拆解其核心组件、企业落地场景和实战成果,帮小白快速入门,读懂这项能解放人力、提升效率的新技术,轻松掌握它的核心价值和落地思路。

program哲学 3263

flex java amf_Flex BlazeDS在Java中进行AMF数据封装通信 - 小李专栏 - 优快云博客

< type="text/javascript">使用RSS订阅本BlogFlash加载外部http数据有很多封装方式,常用的数据封装格式有xmlSOAP、json、webService和amf等。其中前面三个都是互联网通用的基于字符串的格式,而AMF是Adobe独家开发出来的封装格式,它和其他格式不一样的地方是基于二进制的,而且这种格式是Flash可以读取的。它的优点也显露出来了:1...

weixin_42515177的博客 284

C#上位机实战:Modbus RTU串口通信(CRC校验+超时重发完整实现)

在工业自动化上位机开发中,Modbus RTU是串口通信的事实标准协议,SerialPort是 .NET 平台操作串口的原生类,无需依赖第三方库即可实现基础通信。实际项目中,工控现场存在电磁干扰、串口丢包、设备响应延迟等问题,CRC 数据校验用于保证报文完整性,超时重发机制用于提升通信稳定性。本文从零封装一套可直接落地的 Modbus RTU 通信组件,包含完整的校验算法、超时控制、重发逻辑,并配套 WinForm 演示界面。本文基于 C# 原生SerialPort类,实现了一套生产可用。

这里只有干货:从 Modbus 通信到 MES 对接,从 YOLO 训练到工控机部署,带你搞定工业软件开发全流程。 387

人工智能_大模型095_Web版003_deepseek R1本地安装_私有化部署_支持RAG_调用HTTPAPI做自己的AI应用_安装RagFlow以及使用_---人工智能工作笔记0240

这里的一定要注意,是资源不够用了,可以点击ragflow-server左边的小绿点,查看 结果。注意去把内存改成10G把至少,我这里改成了10G,因为电脑一共就16G,再试试吧.可以看日志,就显示的是没有连接上mysql,结果我一看,mysql,根本没启动.然后下面选择general就可以了,然后点击确定,然后再去点击。手动去启动,然后再去试试,注意,内存这里给8G太小了还是.调成8G了,然后硬盘大了大了一些换成50G了,然后。点击系统模型设置可以看到,选择聊天模型就可以了,

添柴程序猿的专栏 447

Blazeds集成Flex和Java

      BlazeDS中包含了AMF 的 Java 实现,可以用来与服务器端的Java对象远程交互,也可以用来在客户端之间传递消息。开发人员可以借助 BlazeDS 的远程技术简单地调用 POJO、Spring 服务或EJB方法。开发人员可以通过其消息系统从客户端向服务器端发送消息,当然也可从服务器端向客户端发送消息。   BlazeDS 也可以与其他一些消息系统结合使用,比如JMS、Act...

zhanshenlvbu321的博客 270

4、基于STM32 NUCLEO - F030R8开发板的嵌入式编程入门

本文详细介绍了如何在STM32 NUCLEO-F030R8开发板上实现LED闪烁功能,作为嵌入式编程的入门实践。内容涵盖开发板组成、跳线设置、项目创建、代码编写与解析、编译运行步骤,以及常见问题解决方法和拓展应用。通过本文学,习者可以掌握嵌入式开发的基本流程,并为后续深入学习打下基础。

m9n0o的博客 83

基于Java平台的AMF-RPC实现(BlazeDS)

另一种高效的传输协议代替 SOAP 协议传输的方案,那便是 AMF 协议。通过 AMF 协议实现 RPC 通信功能,则称为 AMF_RPC。在Java平台可以使用 LCDS 或 BlazeDS 实现 AMF-RPC 功能。 LCDS 是一个JavaEE 服务端组件,用于简化 Flex、Flash 和 AIR 应用程序与 JavaEE Web 应用程序之间的大数据量通信。通过 LCDS 与服务器端通

psiitoy的专栏 1189

精雕软件(JDpaint) 5.5 绿色版

精雕软件(JDpaint) 5.5 绿色版精雕软件(JDpaint) 5.5 绿色版精雕软件(JDpaint) 5.5 绿色版

SAP B1中文培訓教材_SDK

公司内部培训资料,对开发工具 ,DIAPI, UIAPI,Add-ON有详细解说

flex java blazeds_FLEX 与JAVA的LCDS BLAZEDS配置. | 学步园

FLEX 与JAVA的LCDS BLAZEDS配置.1.构架原理Flash Remoting的原理类似于Resin的Hessian,都是使用基于HTTP协议的轻量级二进制协议,即AMF。Flash Remoting使用AMF来和服务器通讯。基本过程的原理可以参考Flash网站上面的文档。简单来说就是在服务器端,需要有一个Servlet,接收Flash的HTTP请求,然后把AMF格式封装的HTTP请...

weixin_39662834的博客 138

Probability and Statistics - 4th edition

Probability and Statistics - 4th edition

blazeds通道、端点配置(AMF,HTTP协议通道)

选择端点 BlazeDS提供了下列基于servlet的通道、端点组合。使用安全协议 HTTPS 向 AMF 端点发送消息安全的通道和端点都以“Secure”开头;比如,SecureAMFChannel和SecureAMFEndpoint          描述AMFChannel/AMFEndpoint一对简单的通

babylon_0049的专栏 2853

STM32F407中文手册

STM32f407中文手册 本参考手册面向应用开发人员,提供有关使用 STM32F405xx/07xx、STM32F415xx/17xx、 STM32F42xxx 和 STM32F43xxx 微控制器存储器与外设的完整信息。STM32F405xx/07xx、STM32F415xx/17xx、STM32F42xxx 和 STM32F43xxx 构成一个微 控制器系列,各产品具有不同的存储器大小、封装和外设。有关订购信息以及器件的机械与电气特性,请参见数据手册。有关 ARM Cortex™-M4F 内核的信息,请参见《Cortex™-M4F 技术参考手册》。

FLEX 与JAVA的LCDS BLAZEDS配置

FLEX 与JAVA的LCDS BLAZEDS配置

sdfhncfw的博客 189

Spring BlazeDS Integration 1.5.0.M2是一个用于集成Spring框架和BlazeDS(Adobe的远程消息系统)的工具包

Spring BlazeDS Integration 1.5.0.M2 是 SpringSource(现为 VMware)发布的里程碑版本(Milestone 2),旨在简化 Spring 框架与 Adobe BlazeDS 的集成。BlazeDS 是一个开源的服务器端技术,支持 Flex/Flash 客户端通过 AMF(Action Message Format)协议与 Java 后端进行高效、二进制化的远程过程调用(RPC)、消息推送(Message Service)和数据同步。

[Blog][Domain] programb.blog.youkuaiyun.com 580

amf3 java_java与as3,amf交互相互解析vo数据例子

AMF这东西跟服务端交互还是挺爽的,搜了一下,发现网上没有很完整的例子,大多只有一段。今天整理下之前的项目代码,抽出amf来上个教程,怕以后忘记了。本教程写的是http,Servlet交互的方式。socket方式要写粘包,代码麻烦,不写了。调试环境1.java jdk 1.62.flash builder 4.53.blazeDS(下载地址http://opensource.adobe.com/w...

weixin_39627430的博客 297

使用Spring BlazeDS Integration步骤

个人经验,仅供参考,大体上还得根据官方提供的reference来做1、  下载spring-flex-1.0.0.M2,org.springframework.web.servlet等包2、  设置web.xml:servlet>       servlet-name>Spring MVC Dispatcher Servletservlet-name>       servle

hspeed的专栏 1684

flex java blazeds 注解_Flex+BlazeDS+Spring整合

Flex与服务器通讯有3中方式:HTTPService 组件访问HTTP服务,WebService 组件访问WebService服务,RemoteObject 组件访问Server端对象。第三种方法是最常用最灵活的方法,这种方式通过AMF二进制形式传递数据,需要支持AMF协议的中间件,与java通讯时使用BlazeDS(免费开源)中间件。新建项目新建Flex项目,服务器选择J2EE-->Bl...

weixin_35717251的博客 248

blazeds 自带的日志记录功能

在mxml添加<mx:TraceTarget level="1"/>,level代表日志等级,就是all,debug,info,error等。。。。 在配置文件中打开: <logging> <target class="flex.messag...

chengyu0485的博客 191

FLEX 与JAVA的LCDS BLAZEDS配置.

FLEX 与JAVA的LCDS BLAZEDS配置.1.构架原理Flash Remoting的原理类似于Resin的Hessian,都是使用基于HTTP协议的轻量级二进制协议,即AMF。 Flash Remoting使用AMF来和服务器通讯。基本过程的原理可以参考Flash网站上面的文档。简单来说就是在服务器端,需要有一个Servlet,接收Flash的HTTP请求,然后把AMF格式封装的HTTP请求解析成为对服务器端对象的调用(例如调用Java的业务对象);在客户端,Flash Remoting API

attilax的专栏 4550

BlazeDS知识积累

BlazeDS是一个基于消息的框架。主要运用了两种模式:请求响应模式、发布/订阅模式。 BlazeDS提供以下几种通道:   (1)标准AMF通道;   (2)加密AMF通道;   (3)HTTP通道(AMFX)。 其中AMF和HTTP通道都支持无轮询的请求/响应模式和客户端轮询模式(模拟实时通信),而AMF和HTTP流通道模式提供了真正的数据流实时模式。 AMF协议时基于Http协议

Stereo 668

Spring flex 搭建服务 之 架构原理(BlazeDS)和服务配置方法 (第一章)

下面的内容是Spring BlazeDS 和flex的原理性问题,如果您实在搞不懂,也并不影响你使用Spring和flex架构,只是有时你可能不了解那些配置文档说的是什么意思而已。   Flex要想与Spring进行配合使用,需要一个附加的组件BlazeDS。Blaz

yywusuoweile的专栏 1310
上一篇: 把应用程序从 Internet Explorer 迁移到 Mozilla(来自IBM的好文)
下一篇: Keycode对照表
marshane
博客等级 码龄19年 6粉丝 22原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值