整合 Adobe Flex 和 Spring
随着 Adobe Flex 技术的成熟,越来越多的企业开始采用 Adobe Flex 技术开发 RIA (Rich Internet Application)。在常见的 RIA 应用程序架构中,客户端用 Adobe Flex 渲染出漂亮的界面,而渲染界面所需要的数据则从服务器端的应用程序获取。在 Java EE 领域,服务器端的应用程序通常是运行在 Java EE 应用服务器中,以获取安全,事务,高可靠性等企业级特性,这直接催生了整合 Abode Flex 和 Java EE 应用服务器的需求。而Spring 又是当前应用最广泛的 Java EE 应用服务器之一,本文将主要介绍如何整合这两种技术,使你能够轻松构建既健壮又漂亮的 Web 应用程序。整合 Adobe Flex 和 Spring 的关键就在于提供一种方法使得 Adobe Flex 客户端程序可以很容易访问到 Spring 管理的Bean,并避免过多的配置。利用开源框架 BlazeDS 和 Spring BlazeDS Integration 来集成 Adobe Flex 和 Spring 可以帮助你做到这一点。
BlazeDS 和 Spring BlazeDS Integration
BlazeDS, BlazeDS 是 Adobe 公司的一个开源项目,用于实现基于 Flex 的前端与基于 Java 的后端应用程序之间的远程调用和消息传送。而 Spring BlazeDS Integration 是 Adobe 和 Spring 联合开发的一个开源集成项目,目标是使得开发人员可以轻松创建前端采用 Flex 而后台采用 Spring 的RIA 应用程序,同时避免过多的配置。图1展示了 Spring BlazeDS Integration 的工作原理。首先,在 web.xml 中注册 Spring Web MVC 框架的 DispatcherServlet,用于处理 Spring 请求,通常 DispatcherServlet 只是将接收到的 Spring 请求转给相应的处理器(handler),处理器会处理接收到的请求并返回一个响应。而这些处理器需要在 Spring Web MVC 框架的配置文件中进行装配,BlazeDS 就是在这里被装配为 Spring Web MVC 框架的一个处理器,用于处理 Flex 的远程调用请求,装配后的 BlazeDS 可以把 Spring 管理的 Bean 封装成 Flex 客户端可以远程调用的服务对象。整个过程会涉及到3个配置文件,如图1中的白色折角框所示。下面会一步一步介绍如何使用 Spring BlazeDS Integration 整合 Flex 和 Spring。
图1 – Spring BlazeDS Integration 示意图
软件环境要求
Java 1.5或更高版本
Tomcat 6或更高版本
Spring 2.5或更高版本
BlazeDS 3.2或更高版本
Spring BlazeDS Integration 1.0 或更高版本
Internet Explorer 6/7/8 或Firefox 3.0/3.5
&nb
相关文档:
使用flex的成本
FLex语言本身免费开源
LCDS:
做 remote object access service的,说简单点就是沟通后台java和前台flex直接的桥梁
adobe官方的东西,收费,很贵
BDS: 开源免费,基本上可以完全替代LCDS,也是adobe官方的东西,估计是LCDS没人用,他又不好意思直接免费搞出来的东西
JRUN: 应用服务器,也很 ......
一、HTTPService
程序代码:
<?xml version="1.0" encoding="utf-8"?>
<mx:Application xmlns:mx="http://www.adobe.com/2006/mxml" layout="absolute" initialize="initializeHandler(event)">
<mx:Script>
<!--[CDATA[
private function initializeHandler(event:Event):void {
countriesSer ......
方法一:
<?xml version="1.0"?>
<!-- events/MultipleEventHandlersInline.mxml -->
<mx:Application xmlns:mx="http://www.adobe.com/2006/mxml">
<mx:Script><![CDATA[
private function submitForm(e:Event):void {
// Handle event here.
......
<?
xml
version
=
"1.0"
?>
<!-- Simple example to demonstrate the Alert control. -->
<
mx:Application
xmlns:mx
=
"http://www.adobe.com/2006/mxml"
>
&n ......