按照手册内容,这里给出两个客户端和服务端示例代码,你可以编译、部署到BlazeDS服务器中进行体验,我使用的编辑器是Eclipse 3.4 + Flex Builder Plunin 3.0.1,BlazeDS使用的二进制包,服务器是Tomcat 6.0.18,而构建一个BlazeDS应用程序的一般流程如下:
1、在WEB-INF/flex目录下的配置文件(一般为remoting-config.xml)中配置一个目的(destination),用他来进行客户端和服务端数据交换;
2、在WEB-INF/flex目录下的配置文件(services-config.xml)中配置一个通道(channel),用它来封装数据以进行数据的网络传送;
3、用MXML或者ActionScript编写Flex客户端;
4、将客户端程序编译为SWF文件,并将它部署在BlazeDS服务器中。
一、RPC服务例子
Remoting Service是BlazeDS服务器中RPC服务的一种,它能够让客户端访问服务端POJOs的方法。在这个例子中,首先在服务端部署一个Java类:EchoService,用来返回客户端发送过来的字符串,具体代码如下:
package remoting;
public class EchoService
{
public String echo(String text) {
return "Server says: I received '" + text + "' from you";
}
}
echo()方法带有一个字符串的参数,并将它与另外一些字符串组合后返回。将该文件编译,把生成的EchoService.class文件拷贝到WEB-INF/classes/remoting目录下。
接下来,在WEB-INF/flex/remoting-config.xml文件中定义目的,代码如下:
<destination id="echoSericeDest" channels="my-amf">
<properties>
<source>remoting.EchoService</source>
</properties>
</destination>
source定义了目的相对应的具体Java类,而channels定义了该目的使用的通道,而通道的定义则在WEB/flex/services-config.xml文件中定义,具体如下:
<channel-definition id="my-amf" class="mx.messaging.channels.AMFChannel">
<endpoint url="http://{server.name}:{server.port}/{context.root}/messagebroker/amf" class="flex.messaging.endpoints.AMFEndpoint" />
<properties>
<polling-enabled>false</polling-enabled>
<properties>
</channel-definition>
服务端的工作完成了,如果使用的是BlazeDS的二进制版本(blazeds.war),在Flex Builder环境下,其中通道的定义默认就完成了,而在目的的定义中,存在一个默认的通道配置(default-channels),所以,在定义目的的时候如果是使用的默认通道配置也可以省略通道。
客户端编码主要就是Flex的开发,用到的控件主要就是RemoteObject,在该示例中就是很简单的在文本框中显示返回的结果,代码如下:
<?xml version="1.0" encoding="utf-8"?>
<mx:Application xmlns:mx="http://www.adobe.com/2006/mxml" width="100%" height="100%">
<mx:Script>
<![CDATA[
import mx.rpc.events.FaultEvent;
import mx.rpc.events.ResultEvent;
private function resultHandle(event:ResultEvent):void
{
ta.text += "Server responded: " + event.result + "\n";
}
private function faultHandle(event:FaultEvent):void
{
ta.text += "Received fault: " + event.fault + "\n";
}
private function echo():void
{
var text:String = ti.text;
ro.echo(text);
}
]]>
</mx:Script>
<mx:RemoteObject id="ro" destination="echoServiceDest" result="resultHandle(event);" fault="faultHandle(event);" />
<mx:Label text="Enter a text fro the server to echo" />
<mx:TextInput id="ti" text="Hello world!" />
<mx:Button label="Send" click="echo();" />
<mx:TextArea id="ta" width="100%" height="100%" />
</mx:Application>
将该文件编译成SWF文件,然后部署到BlazeDS服务器中,启动Tomcat服务器,在浏览器中浏览该文件,将会看到运行的结果,如下图。
整个代码请点击下载(解压后拷贝rpc目录到Tomcat的webapps目录下):RPC服务例子
另一个示例看下一篇文章:消息服务示例。
分享到:
相关推荐
### 《BlazeDS开发指南》关键知识点概览 #### 一、BlazeDS简介及其功能 BlazeDS,作为Adobe公司的一款免费开源产品,旨在简化企业级应用的开发过程,特别是那些涉及到Flex和Java技术的项目。它源于Adobe的另一款...
2. **blazeds_devguide.pdf**:这是Blazeds的开发指南,通常包含详细的API参考、教程、最佳实践和示例代码。开发者可以通过这份文档学习如何使用Blazeds的各种功能,如AMF(Action Message Format)通信协议、Flex ...
**二、BlazeDS开发流程** 1. **设置环境**:首先需要安装Adobe Flex Builder或使用其他IDE集成BlazeDS库,同时在服务器端部署BlazeDS服务。 2. **创建服务**:在服务器端定义Java服务,这些服务通常以Spring Bean的...
在开发BlazeDS应用程序时,开发者需要了解如何配置BlazeDS服务端,包括部署必要的库文件、编辑配置文件以及在web.xml中定义MessageBrokerServlet和Session监听器。客户端编程涉及到如何使用Flex SDK提供的控件来调用...
在阅读"BlazeDS开发指南与API"时,应结合实践操作,尝试自己配置和使用BlazeDS,遇到问题时查阅官方文档或社区资源。这样不仅可以巩固理论知识,还能提升解决问题的能力。记住,熟练掌握BlazeDS不仅意味着你可以构建...
"BlazeDS开发者指南" 提供了全面的技术指导,涵盖了从安装、配置到实际应用开发的全过程。中文版和英文版方便不同语言背景的开发者学习,帮助他们更好地理解和运用BlazeDS。 总的来说,BlazeDS是构建RIA的关键技术...
BlazeDS开发者指南是Adobe公司为使用BlazeDS框架进行富互联网应用(RIA)开发的开发者提供的一份详细参考资料。BlazeDS是一个开源项目,它允许服务器与客户端之间通过AMF(Action Message Format)进行数据交换,...
而BlazeDS是Adobe提供的一个免费服务器端组件,用于实现Flex与Java后端的数据通信。本文将深入探讨如何配置Flex与BlazeDS,让它们协同工作,实现高效、稳定的数据交换。 首先,我们需要准备必要的工具和环境。...
#### 二、BlazeDS组成部分 - **客户端程序**:这部分主要负责与用户交互以及与服务器进行数据通信。常见的客户端程序使用Flex或AIR构建,同时也支持HTML和JavaScript技术。 - **服务端程序**:BlazeDS的服务端部分...
本资料包包含了两份重要的资源,分别是《BlazeDS开发指南》学习笔记.doc和blazeds_devguide.pdf,它们将帮助我们深入了解BlazeDS的开发过程。 首先,《BlazeDS开发指南》学习笔记.doc可能包含了作者在研读官方文档...
BlazeDS通信到Java的PureMVC——Flex框架,BlazeDS的服务器配置比较麻烦,这里使用的是直接下载blazeds_turnkey_3-0-0-544.zip中的tomcat BlazeDS模板路径为: blazeds_turnkey_3-0-0-544.zip解压后路径\tomcat\...
Flex BlazeDS开发使用手册是Adobe官方提供的一份详尽指南,旨在帮助开发者高效地集成BlazeDS框架到Flex应用程序中。BlazeDS是一款开源的服务器端技术,它为富互联网应用(RIA)提供了数据推送、消息传递和Remoting...
通过阅读《BlazeDS开发者指南》,开发者可以学习到如何利用BlazeDS构建高性能、交互性强的Web应用程序,提升用户界面的动态性和响应性。指南提供的实例演示了如何创建RPC服务和消息服务,帮助开发者快速上手实践。
总的来说,“BlazeDS开发者指南”涵盖了BlazeDS的基础概念、核心功能、配置方法、集成策略、性能优化等多个方面,是开发人员深入了解和熟练掌握BlazeDS技术的宝贵资源。通过深入阅读和实践,你可以提升自己在Flex和...
BlazeDS 整合 Flex HelloWorld 示例是一个初学者入门教程,主要介绍了如何在JavaEE环境中集成BlazeDS和Flex,创建一个简单的远程调用服务。BlazeDS是一个开源项目,提供了与Adobe Flex之间的实时数据交互,使得Flex...
### BlazeDS开发者指南知识点 #### 一、BlazeDS简介 BlazeDS是Adobe公司推出的一款强大工具,专为Adobe Flex或Adobe AIR等客户端应用程序提供高效、可扩展的远程访问和消息服务。它允许客户端应用与服务器端数据...
BlazeDS是一款由Adobe公司推出的免费开源产品,它是Lightweight ColdFusion Data Services (LCDS)的精简版,主要用于Web开发,特别是针对Flex和AIR客户端。BlazeDS的主要目标是促进客户端与服务端之间的数据交互,...