`
Function
  • 浏览: 64231 次
  • 性别: Icon_minigender_1
  • 来自: 南京
社区版块
存档分类
最新评论

Flex+Blazeds+Spring进行集成

    博客分类:
  • flex
阅读更多
很久没有写blog了,今天有空写一个 关于flex 和 Spring 进行集成的入门文章,希望可以帮助到一些正在学习flex的同学。

开发工具:Myeclipse(32位,64位集成flex似乎有些问题)
Flex版本:4.0
BlazeDS版本:4.0(GUN,GPL协议,商用小心)

下面我们开始集成,
(1)对于MyEclipse安装Flex插件,这里就不赘述了。

(2)下载BlazeDS4.0 地址:http://sourceforge.net/adobe/blazeds/wiki/download%20blazeds%204/
选择这个就OK了,

解压开后会有下面两个war文件:

spring的话 就使用 blazeds-spring.war 这个里面的东西吧。

(3)a.用MyEclipse创建一个web项目
     b.复制 blazeds-spring/WEB-INF 下的 flex、libs、flex-servlet.xml 和 web.xml 复制到 web项目的 对应目录下
     c.复制 blazeds-spring/WEB-INF/spring 文件价下的 配置文件到 web项目的 src 目录下
     d.修改web.xml的一个小地方,应为spring配置是直接放到 src下,所以把圈中的spring 删除 :

(4)部署我们的web项目到tomcat,然后右击web项目
选择 Add/Change Project Type->Add Flex Project Type...

选择 J2EE 和 BlazeDS


下一步, root folder 选择tomcat里的webapp根目录
root url 填写访问这个webapp的根路径(注意修改为自己的端口号)

点击 finish,大功告成,项目已经集成好了。

备注:项目可能会包两个错误,打开 problems 窗口
错误一:

解决方法:右击项目,选择properties->Flex Complier 找到 additional complier arguments 将最后的 en_CN 改为 en_US 即可。

错误二:

右击错误 选择 recreate html templete 即可解决

下面进行测试:
首先将JAVA文件和Flex文件分离:在web开发视图创建 flex_src (source folder),切换到FB视图,右击项目 -> properties -> flex build path 找到 main source folder 填入 flex_src 确定即可。
编写 mxml 文件,将src 文件夹下的 mxml 文件 拖到 flex_src 文件夹下,然后编写:
<?xml version="1.0" encoding="utf-8"?>
<s:Application xmlns:fx="http://ns.adobe.com/mxml/2009"
			   xmlns:s="library://ns.adobe.com/flex/spark"
			   xmlns:mx="library://ns.adobe.com/flex/mx"
			   minWidth="955"
			   minHeight="600">
	<fx:Declarations>
	</fx:Declarations>
	<fx:Script>
		<![CDATA[
			import mx.controls.Alert;

			function button2_clickHandler(event:MouseEvent):void
			{
				Alert.show("hello flex");
			}
		]]>
	</fx:Script>
	<s:Button label="btn"
			  click="button2_clickHandler(event)">

	</s:Button>
</s:Application>

很简单,一个按钮,点击弹出一个对话框;
首先运行web项目,web项目运行后,右击刚才的 mxml 文件 run as -> web application
是不是浏览器自动打开了一个网页(建议使用firefox,Chrome我这里似乎显示不了,有空在研究)。点击下 按钮,是不是你想要的?

和后台交互
首先编写服务器端,切到web视图:
编写一个java类:HellFlexAction
@Controller("helloflexAction")
@RemotingDestination(channels = { "my-amf"})
public class HelloFlexAction {
        @RemotingInclude
	public String hello(){
		return "ni hao";
	}
}

还记得Controller注解吗?用SpringMVC应该清楚吧。
再打开 app-config.xml的Spring配置文件,添加
   
<context:component-scan base-package="test" />
	<context:annotation-config />

配置成扫描注解,
服务器代码编写好了。
下面编写 mxml 的:
切到FB视图,还是刚才的maml文件,修改如下:
<?xml version="1.0" encoding="utf-8"?>
<s:Application xmlns:fx="http://ns.adobe.com/mxml/2009"
			   xmlns:s="library://ns.adobe.com/flex/spark"
			   xmlns:mx="library://ns.adobe.com/flex/mx"
			   minWidth="955"
			   minHeight="600">
	<fx:Declarations>
		<mx:ChannelSet id="channelSet">
			<mx:AMFChannel url="/HelloFlex/messagebroker/amf"/>
		</mx:ChannelSet>
		<s:RemoteObject id="service" channelSet="{channelSet}"
						destination="helloflexAction">
			<s:method name="hello" result="remote_resultHandler(event)"/>
		</s:RemoteObject>
	</fx:Declarations>
	<fx:Script>
		<![CDATA[
			import mx.controls.Alert;
			import mx.rpc.events.ResultEvent;

			private function button2_clickHandler(event:MouseEvent):void
			{
				service.hello();
			}

			private function remote_resultHandler(event:ResultEvent):void
			{
				Alert.show(String(event.result));
			}
		]]>
	</fx:Script>
	<s:Button label="btn"
			  click="button2_clickHandler(event)">

	</s:Button>
</s:Application>

可以这么理解,点击按钮,远程调用 service 也就是 HelloFlexAction 中 hello() 方法,然后回调 remote_resultHandler 将返回的结果传入。 看看获取的数据是不是你想要的呢?

由于 demo 中涉及tomcat路径和项目等路径,打包demo大家下载后改起来还是比较繁琐的,大家还是照着做一遍吧,我一次就搞定了,你也试试。

  • 大小: 14.5 KB
  • 大小: 2.7 KB
  • 大小: 10.6 KB
  • 大小: 11.1 KB
  • 大小: 18.3 KB
  • 大小: 18.3 KB
  • 大小: 2.6 KB
  • 大小: 3 KB
  • 大小: 11.9 KB
3
0
分享到:
评论
3 楼 tedeum 2013-08-13  
http://tedeum.iteye.com/blog/1495862
偶用spring-flex配了一个,但是貌似flex以后没有前途了。
2 楼 Function 2013-08-12  
freezingsky 写道
spring官方网站上有一个项目叫spring-flex。天然的集成!

spring-flex 1.5.2 版本的也看了,水平不够吧,一直没能很好的使用,所以直接自己动手干了,呵呵
1 楼 freezingsky 2013-08-12  
spring官方网站上有一个项目叫spring-flex。天然的集成!

相关推荐

    PureMVC+Flex+BlazeDS+Spring+Hibernate.doc

    标题中的“PureMVC+Flex+BlazeDS+Spring+Hibernate.doc”指的是一项整合了多种技术的Web应用开发方案,这些技术包括PureMVC、Flex、BlazeDS、Spring和Hibernate。这篇文档可能是指导读者如何将这些技术结合在一起...

    flex+blazeds+spring

    在Flex与Spring集成的环境中,Flex作为用户界面展示层,负责与用户进行交互。BlazeDS作为中间层,它提供了AMF(Action Message Format)协议,使Flex能够与Spring管理的Java对象进行高效的数据交换。Spring作为业务...

    WEB项目-集成Flex3+BlazeDS3.2+Spring2.5.6集成方式二

    【集成Flex3+BlazeDS3.2+Spring2.5.6的另一种方式】\n\n在上一讲中,我们介绍了如何将Flex3、BlazeDS3.2和Spring2.5.6集成在一起,构建一个强大的WEB项目。本讲我们将探讨集成方式二,该方法采用Spring的侦听配置...

    MyEclipse7.5+flex4+spring3.0.5+struts2.2.1+hibernate3.6.0+blazeds4.0.0.14931完美整合方案

    本方案提供了一种集成化的开发环境,即"MyEclipse7.5+flex4+spring3.0.5+struts2.2.1+hibernate3.6.0+blazeds4.0.0.14931完美整合方案",它将多个流行的技术框架整合在一起,为Web应用程序开发提供了一个强大的平台...

    跟我一步步搭建PureMVC+Flex+BlazeDS+Spring+Hibernate

    根据提供的文件信息,本文将详细介绍如何一步步搭建PureMVC+Flex+BlazeDS+Spring+Hibernate的技术栈。这个过程涉及到了多个技术领域的整合,包括前端的Flex开发、后端的Java开发以及数据库交互等多个方面。 ### 一...

    flex4+blazeDS+spring+ibatis开发教程

    ### Flex4+BlazeDS+Spring+iBatis 开发教程详解 #### 一、富互联网应用(RIA)概念与背景 ##### RIA定义 富互联网应用(Rich Internet Application,简称RIA)是一种新兴的应用程序形式,它结合了客户端与服务器端...

    PureMVC+Flex+BlazeDS+Spring+Hibernate

    - 集成Remote Object到Spring框架,使Flex客户端可以通过BlazeDS与Spring服务交互。 - 使用Hibernate框架在服务器端进行数据访问和分层设计,包括实体模型、DAO(数据访问对象)和Service层。 通过这个技术栈,...

    Flex+BlazeDS+Spring+Hibernate

    Flex+BlazeDS+Spring+Hibernate 是一个经典的前端与后端集成方案,广泛应用于构建富互联网应用程序(Rich Internet Applications,RIA)。在这个框架组合中,Flex 作为用户界面层,提供了丰富的交互体验;BlazeDS ...

    Flex+BlazeDS+Spring环境一步步搭建

    **集成Remote Object到Spring**:在Flex客户端,使用RemoteObject组件与BlazeDS建立连接,然后在Spring配置文件中定义相应的服务代理,以便于Spring管理这些远程服务。 D. **引入Hibernate框架**:在Java后端,...

    跟我一步步搭建 PureMVC+Flex+BlazeDS+Spring+Hibernate

    通过以上步骤,你将成功构建一个完整的PureMVC+Flex+BlazeDS+Spring+Hibernate RIA系统,实现前端与后端的无缝集成,提供高效的数据交换和复杂的业务处理能力。在实际开发中,你可能还需要考虑错误处理、安全性和...

    Flex+JAVA+BlazeDS开发环境配置(Java工程和Flex工程独立)

    远程调用服务允许 Flex 客户端直接调用服务器端的 POJOs(Plain Old Java Objects)、Spring 服务或 EJB 方法,极大地简化了分布式应用的开发。消息传递服务则支持发布/订阅模式,使得服务器端可以广播消息到多个...

    跟我一步步搭建+PureMVC+Flex+BlazeDS+Spring+Hibernate

    为了搭建一个基于PureMVC、Flex、BlazeDS、Spring和Hibernate的项目,我们需要遵循一系列详细的步骤,这些步骤涉及到安装和配置不同的软件组件、创建项目以及集成各个框架。下面是这个过程的知识点总结: 一、软件...

    flex+spring+blazeds消息推送

    在描述中提到的“elipse下配置的spring+flex+blazeds”,意味着开发者是在Eclipse集成开发环境中进行项目开发的。Eclipse是一个广泛使用的Java IDE,提供了丰富的插件支持,包括Spring工具集和Flex Builder,使得...

    Flex+blazeds+java企业门户网站完整源码

    通过对这些源码的深入研究,我们可以了解到具体的设计模式、数据处理方式以及服务调用逻辑,这对于学习和理解Flex与BlazeDS的集成应用具有很高的价值。 总之,这个“Flex+blazeds+java企业门户网站完整源码”是一个...

    WEB项目-集成Flex3+BlazeDS3.2+Spring2.5.6集成方式一

    在本教程中,我们将探讨如何将Flex3与BlazeDS3.2以及Spring2.5.6集成,以便在Web项目中充分利用这些技术的优势。在第二讲中,我们已经了解了如何集成Flex3和BlazeDS3.2,现在我们将在此基础上添加Spring的功能,以...

    flex4+blazeds+spring+hibernate集成

    Flex4、BlazeDS、Spring和Hibernate是四个在IT领域中关键的技术组件,它们的集成为构建高效、灵活且功能丰富的Web应用程序提供了强大的基础。下面将详细解释这些技术及其集成方式。 **Flex4** 是Adobe Flex框架的一...

    Flex4.X+BlazeDS+Spring3L实战开发在线书店三

    《Flex4.X+BlazeDS+Spring3 实战开发在线书店》是一门深入探讨使用Adobe Flex 4.6、BlazeDS、Spring 3框架以及Java相关技术进行Web应用程序开发的课程。这门课程旨在帮助开发者掌握如何构建功能丰富的、交互性强的...

    flex+java+spring+hibernate+blazeds整合

    BlazeDS是Adobe提供的一个开放源代码服务器端技术,它为Flex应用程序提供了与Java应用程序进行实时双向通信的能力。BlazeDS支持AMF(Action Message Format),这是一种高效的数据传输格式,能快速地在Flex客户端和...

    WEB项目-集成Flex3+BlazeDS3.2+Spring2.5.6+iBatis2.3.4

    【集成Flex3+BlazeDS3.2+Spring2.5.6+iBatis2.3.4】的WEB项目构建 在Web开发中,整合不同的技术栈可以提高项目的灵活性和可维护性。本讲主要讲解如何将Flex3前端、BlazeDS3.2后端数据传输服务、Spring2.5.6依赖注入...

    Flex + blazeds + Java入门搭建与简单应用

    2. **配置BlazeDS**:BlazeDS是与Java服务器集成的一部分,通常将其部署到Tomcat等应用服务器上。下载BlazeDS的WAR文件,然后将其解压到服务器的webapps目录下。 3. **设置Java环境**:确保已安装Java Development ...

Global site tag (gtag.js) - Google Analytics