Spring BlazeDS Integration 是什么?
Spring BlazeDS Integration 是 SpringSource 的开源项目,用于整合 Spring 与 BlazeDS。
为什么需要 Spring BlazeDS Integration?
正如“整合Flex,BlazeDS,Spring(< 2.5.6)”介绍的:不使用 Spring BlazeDS Integration 同样可以整合 Spring 与 BlazeDS。但这种整合方式不自然,需要额外维护一个 BlazeDS 配置文件,Spring BlazeDS Integration 会改善这种处境。
Spring BlazeDS Integration 需要的软件环境:
Java 5 或更高
Spring 2.5.6 或更高
BlazeDS 3.2 或更高
Spring BlazeDS Integration 特征
MessageBroker(BlazeDS 的核心组件)被配置为 Spring 管理的 Bean
Flex 客户端发出的 HTTP 消息通过 Spring 的 DispatcherServlet 路由给 MessageBroker
Remote objects 以 Spring 的方式配置在 Spring 配置文件内
注意事项:
以下内容基于“
构建Flex4为前端的Java EE项目 ”中创建的 sampleApp 项目。
在继续本教程之前你需要准备好以下事项:
下载 Spring Framework(截稿时最新版 spring-framework 3.0.2),解压备用
下载 Spring Framework dependencies(截稿时最新版 spring-framework 3.0.2 dependencies),解压备用
下载 Spring BlazeDS Integration(截稿时最新版 spring-flex 1.0.3),解压备用
第一步:准备所需 jar 包
将以下 3 部分 jar 包拷贝到 sampleApp 项目的 lib 下
Spring Framework
org.springframework.aop-3.0.2.RELEASE.jar
org.springframework.asm-3.0.2.RELEASE.jar
org.springframework.beans-3.0.2.RELEASE.jar
org.springframework.context-3.0.2.RELEASE.jar
org.springframework.core-3.0.2.RELEASE.jar
org.springframework.expression-3.0.2.RELEASE.jar
org.springframework.web.servlet-3.0.2.RELEASE.jar
org.springframework.web-3.0.2.RELEASE.jar
Spring Framework dependencies
org.aopalliance 内的 com.springsource.org.aopalliance-1.0.0.jar
edu.emory.mathcs.backport 内的 com.springsource.edu.emory.mathcs.backport-3.0.0.jar
net.sourceforge.cglib 内的 com.springsource.net.sf.cglib-2.2.0.jar
[注:]Spring 3 的依赖包用Ivy 或 Maven 管理会很方便,完成本系列教程后我会单独整理这部分。暂且手动拷贝吧
Spring BlazeDS Integration
org.springframework.flex-1.0.3.RELEASE.jar
第二步:修改 web.xml 文件
将 web.xml 内所有 Flex 相关配置删除掉,添加以下内容(改用 Spring web 应用的前端控制器处理所有应用请求)
<servlet>
<servlet-name>Spring MVC Dispatcher Servlet</servlet-name>
<servlet-class>org.springframework.web.servlet.DispatcherServlet</servlet-class>
<init-param>
<param-name>contextConfigLocation</param-name>
<param-value>/WEB-INF/web-application-config.xml</param-value>
</init-param>
<load-on-startup>1</load-on-startup>
</servlet>
<servlet-mapping>
<servlet-name>Spring MVC Dispatcher Servlet</servlet-name>
<url-pattern>/messagebroker/*</url-pattern>
</servlet-mapping>
第三步:配置 web-application-config.xml
创建应用上下文配置文件 web-application-config.xml
<?xml version="1.0" encoding="UTF-8"?>
<beans xmlns="http://www.springframework.org/schema/beans"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://www.springframework.org/schema/beans
http://www.springframework.org/schema/beans/spring-beans-3.0.xsd">
</beans>
为了使用 Spring BlazeDS Integration 的 tag,增加命名空间
<?xml version="1.0" encoding="UTF-8"?>
<beans xmlns="http://www.springframework.org/schema/beans"
xmlns:flex="http://www.springframework.org/schema/flex"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://www.springframework.org/schema/beans
http://www.springframework.org/schema/beans/spring-beans-3.0.xsd
http://www.springframework.org/schema/flex
http://www.springframework.org/schema/flex/spring-flex-1.0.xsd">
</beans>
为了把请求路由给 MessageBroker,添加以下 tag
<flex:message-broker />
定义 Bean,并用 remoting-destination tag 把它暴露给 Flex
<bean id="employeeServiceDest" class="com.sample.EmployeeService">
<flex:remoting-destination />
</bean>
第四步:删除多余的 Flex 配置文件
删除 services-config.xml 以外的所有 Flex 配置文件(你认为它们还有必要保留吗? )。但千万别忘记在 services-config.xml 内重新定义默认 channel(原来定义在 remoting-config.xml 内):
修改 services-config.xml,替换
<services>
<service-include file-path="remoting-config.xml" />
<service-include file-path="proxy-config.xml" />
<service-include file-path="messaging-config.xml" />
</services>
为
<services>
<default-channels>
<channel ref="my-amf"/>
</default-channels>
</services>
第五步:重新运行 sampleApp 项目
分享到:
相关推荐
Flex blazeds-spring Flex blazeds-spring Flex blazeds-spring Flex blazeds-spring Flex blazeds-spring Flex blazeds-spring
前言:本讲是继【第三讲:WEB项目-集成Flex3+BlazeDS3.2+Spring2.5.6】后,介绍另外一种集成方式; 集成方式二:采用Spring侦听配置模式 目标:实现集成方式二 优点: 1、一个应用可以满足多种请求 2、易于集成...
前言:本讲是在【第三讲:WEB项目-集成Flex3+BlazeDS3.2+Spring2.5.6】方式二的基础上添加iBatis,此次集成其实质是Spring与iBatis的整合而已 目标:WEB项目-集成Flex3+BlazeDS3.2+Spring2.5.6+iBatis2.3.4 再需...
前言:本讲是在【第四讲:WEB项目-集成Flex3+BlazeDS3.2+Spring2.5.6+iBatis2.3.4】的基础上添加iBatis,此次集成其实质是Spring与Struts2的整合而已 目标:WEB项目-集成Flex3+BlazeDS3.2+Spring2.5.6+iBatis2.3.4+...
使用flex 4.5 + Spring 3.0 + Hibernate 3.3 + Cairngorm 2.2.1 + BlazeDS 3.3.0 + Spring BlazeDS Integration 1.0.3整合出的一个登录的小demo·
NULL 博文链接:https://madfroghe.iteye.com/blog/935337
1 27 跟我StepByStep学FLEX教程------Demo12之FLEX和Spring整合 1 28 跟我StepByStep学FLEX教程------访问数据库之JDBCTemplate 1 29 跟我StepByStep学FLEX教程------访问数据库之hsqldb 1 30 跟我StepByStep学...
把spring整合其它框架的方法的配置放在spring文件夹中。 很有条理 用remoteObject做的helloWorld。 适合新手入门和老手改用spring3来做项目。 如要交流可以加我:48724810 by焚香槟榔...2010/12/18
Spring BlazeDS Integration 1.0.0
Spring BlazeDS Integration,Flex通过remoteObject与java通讯,附带例子 文档
2. Flex + BlazeDS + Spring BlazeDS Integration + Spring(>= 2.5.6) + iBATIS + Cairngorm 3. Flex + BlazeDS + Spring(< 2.5.6) + iBATIS + pureMVC 4. Flex + BlazeDS + Spring BlazeDS Integration + ...
WEB项目-集成Flex3_BlazeDS3[1].2_Spring2.5.6_iBatis2.3.4_Struts2.1.8
前言:本讲是在【第二讲:WEB项目-集成Flex3+BlazeDS3.2】的基础上添加Spring功能; 集成方式一:直接采用servlet配置模式,而非侦听配置模式 目标:集成Spring,托管Flex的message请求,使Flex便利使用Spring容器...
flex-spring-blazeds demo
Flex Spring JAVA BLAZEDS整合,永固整合将flex与Spring整合
Flex技术本身和Java就有很强的关联性,它提供了一个基于Eclipse的IDE和BlazeDS.BlazeDS是个基于服务端的Java远程调用和Web消息的一个开源的技术。...在2008年末,Spring社区已经着手Spring BlazeDS整合的项目。
Spring BlazeDS Integration
2. Flex + BlazeDS + Spring BlazeDS Integration + Spring(>= 2.5.6) + iBATIS + Cairngorm 3. Flex + BlazeDS + Spring(< 2.5.6) + iBATIS + pureMVC 4. Flex + BlazeDS + Spring BlazeDS Integration + ...
Flex Spring BlazeDS整个web工程,其中FlexServer是整合后的myeclipse web project工程,FlexText是Flex测试工程。在tomcat中运行测试无误。