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

Flex 与 Spring 集成

阅读更多
Flex 与 Spring 集成

参考文档是 Spring BlazeDS Integration Reference Guide。spring已经提供了与flex的集成的支持,主要的jar包下载地址:http://www.springsource.com/download/community?project=Spring%20BlazeDS%20Integration
Flex与Spring集成的核心思想就是让Spring来管理 MessageBroker。如何集成?可以总结为三步。
1、首先,修改 web.xml文件,将之前配置的 MessageBrokerServlet  去掉改成spring的,
<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/config/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>


2,新建文件 web-application-config.xml
<?xml version="1.0" encoding="GB2312" ?>
<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-2.5.xsd
http://www.springframework.org/schema/flex
http://www.springframework.org/schema/flex/spring-flex-1.0.xsd">
 
<!-- Bootstraps and exposes the BlazeDS MessageBroker simplest form -->
<flex:message-broker id="_messageBroker" services-config-path="/WEB-INF/flex/services-config.xml">
    <flex:mapping pattern="/messagebroker/*" />
    <flex:exception-translator ref="myExceptionTranslator" />
</flex:message-broker>
 
<!--
上面配置是一种简单配置,另外一种更简单配置为:
<flex:message-broker/>
 
还有一种配置为:
<bean id="mySpringManagedMessageBroker" class="org.springframework.flex.core.MessageBrokerFactoryBean">
    <property name="servicesConfigPath" value="classpath*:flex/services-config.xml" />
</bean>
-->
 
<!-- Maps request paths at /* to the BlazeDS MessageBroker -->
<bean class="org.springframework.web.servlet.handler.SimpleUrlHandlerMapping">
    <property name="mappings">
        <value>
            /*=_messageBroker
        </value>
    </property>
</bean>
 
<!-- 下面这个Adapter似乎不用配置,因为我注释后照样可以使用 -->
<!--
Dispatches requests mapped to a MessageBroker 
<bean class="org.springframework.flex.servlet.MessageBrokerHandlerAdapter" />
-->
 
</beans>

3,写remoting-config.xml 文件:
<?xml version="1.0" encoding="UTF-8"?>
<service id="remoting-service" class="flex.messaging.services.RemotingService">
 
<adapters>
    <adapter-definition id="java-object" 
                        class="flex.messaging.services.remoting.adapters.JavaAdapter" 
                        default="true"/>
</adapters>
 
<default-channels>
    <channel ref="my-amf"/>
</default-channels>
 
</service>


到目前为止,flex已经跟spring集成到一起了。
4、将spring的bean导出为flex的Destination。我们要在web-application-config.xml文件中增加。
有三种方式:
第一种:

<bean id="productService" class="flex.samples.product.ProductServiceImpl" />
<flex:remoting-destination ref="productService" />


第二种:

<bean id="productService" class="flex.samples.product.ProductServiceImpl" >
    <flex:remoting-destination />
</bean>

第三种:

<bean id="product" class="org.springframework.flex.remoting.RemotingDestinationExporter">
    <property name="messageBroker" ref="_messageBroker"/>
    <property name="service" ref="productService"/>
    <property name="serviceId" value="productService"/>
    <property name="includeMethods" value="read, update"/>
    <property name="excludeMethods" value="create, delete"/>
    <property name="channels" value="my-amf, my-secure-amf"/>
</bean>


附件是一个例子工程,没有提供jar,工程中所需要的jar

backport-util-concurrent.jar
cfgatewayadapter.jar
cglib-nodep-2.1_3.jar
commons-codec-1.3.jar
commons-httpclient-3.0.1.jar
commons-logging.jar
concurrent.jar
flex-messaging-common.jar
flex-messaging-core.jar
flex-messaging-opt.jar
flex-messaging-proxy.jar
flex-messaging-remoting.jar
jackson-lgpl-0.9.5.jar
org.springframework.flex-1.0.0.RC1.jar
spring2.5.6.jar
spring-webmvc.jar
xalan.jar

本文来源于 冰山上的播客 http://xinsync.xju.edu.cn , 原文地址:http://xinsync.xju.edu.cn/index.php/archives/5078
分享到:
评论
13 楼 gaohejie 2014-10-26  
rsrsdgrfdh坎坎坷坷
12 楼 dream205 2013-07-31  
dream205@163.com

能否麻烦发一份例子程序给我,谢谢。
11 楼 mo9124 2012-02-16  
spring使用注解配置, spring的bean导出为flex的Destination 能写错注解方式吗?
10 楼 nlslzf 2011-08-08  
本文转发,呵呵
9 楼 babylixinghui 2011-07-23  
哪有附件?
8 楼 nlslzf 2011-05-13  
看来你已经搞定了?一般http://www.springframework.org/schema/flex/spring-flex-1.0.xsd这种文件都在对应的jar包里面,你如果缺了jar包,就会说找不到,你jar包要弄对
7 楼 haihe118 2011-05-12  
<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-2.5.xsd
http://www.springframework.org/schema/flex
http://www.springframework.org/schema/flex/spring-flex-1.0.xsd
">
6 楼 haihe118 2011-05-12  
applicationContext.xml
5 楼 haihe118 2011-05-12  
我启动的时候也报这个错误。。。
严重: StandardWrapper.Throwable
org.springframework.beans.factory.parsing.BeanDefinitionParsingException: Configuration problem: Unable to locate Spring NamespaceHandler for XML schema namespace [http://www.springframework.org/schema/flex]
Offending resource: ServletContext resource [/WEB-INF/classes/applicationContext.xml]

好像是说spring的applicationContext.xml的这个配置文件头有问题吧
4 楼 df1234 2009-11-30  
你好,同样的问题。集成时报错了
org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'mySpringManagedMessageBroker' defined in ServletContext resource [/WEB-INF/config/web-application-config.xml]: Invocation of init method failed; nested exception is org.springframework.beans.factory.BeanInitializationException: MessageBroker initialization failed; nested exception is java.lang.IllegalArgumentException: Flex configuration file could not be resolved using pattern: classpath*:flex/services-config.xml
找不出原因。请你帮忙解决一下,如果有集成的小例子的话能不能发我一份研究一下,我的邮箱是df.1234@163.com,谢谢
3 楼 nlslzf 2009-11-23  
另外,我给您按照您提供的邮箱发过去的信件被退回来了
2 楼 nlslzf 2009-11-22  
您好,我这篇文章是转的。我没有通过本文的方式来连接flex和spring
您的这个bug我初步的判断是您没有包含对应的jar包到您的java build path中
从我的经验来判断,应该是org.springframework.flex-1.0.0.RC1.jar  这个包您没有包含到java build path中
您看看



1 楼 周超亿 2009-11-22  
你好,我正在做spring集成flex,看了你的文章后也试了下,但在web-application-config.xml 中出现了错误,我启动Tomcat6.0时出现 Configuration problem: Unable to locate Spring NamespaceHandler for XML schema namespace [http://www.springframework.org/schema/flex]
Offending resource: ServletContext resource [/WEB-INF/config/web-application-config.xml]
不知道是什么原因,项目一直没有办法进展,还请你帮忙解决一下,如果有集成的小例子的话能不能发我一份研究一下,在这先谢谢了,我的邮箱是zhouchaoyi203@163.com

相关推荐

    flex与spring集成

    博文链接:https://xiaotian-ls.iteye.com/blog/229194

    Flex_Spring集成

    flex与spring集成详解

    Pro Flex on Spring

    这些示例涵盖了从简单的数据绑定到复杂的业务流程,让读者逐步掌握Flex与Spring集成的技巧。 总的来说,《Pro Flex on Spring》是一本实用的指南,适合有一定Java和Flex基础的开发者,想要提升RIA开发能力的人群。...

    整合flex和spring常遇到的问题

    在进行Flex与Spring集成的过程中,经常会遇到配置上的问题。例如,在配置文件`services-config.xml`中设置URI时,可能会遇到以下情况: **问题描述:** 在`services-config.xml`中设置URI为: ```xml ...

    Flex4.1集成spring代码

    虽然这并非Flex与Spring集成的直接部分,但考虑到多框架集成的场景,`web.xml`中还配置了Struts2的FilterDispatcher,用于处理与Struts2相关的请求。 ### 实际应用中的注意事项 - **兼容性问题**:确保Flex版本...

    FLEX和spring、hibernate的集成.rar

    - **Flex与Spring集成**:Flex与Spring之间的通信通常通过HTTPService或WebService组件完成,这些组件可以调用Spring的远程服务接口(如基于HTTP的RESTful服务或基于SOAP的Web服务)。Spring-BlazeDS Integration...

    Using Flex with Spring

    《使用Flex与Spring集成开发详解》 在现代Web应用程序开发中,Flex作为一款强大的富互联网应用(RIA)开发框架,以其丰富的用户界面和强大的交互能力备受开发者青睐。与此同时,Spring框架作为Java企业级应用的事实...

    flex与spring的集成工程源码

    "FlexSpring" 文件夹可能包含了Spring服务端的源代码,包括Spring配置文件(如applicationContext.xml),定义了Bean的实例化、依赖注入以及服务接口和实现。此外,还有可能包含Java控制器类,它们是Spring MVC的一...

    上一篇的flex的远程对象调用,flex和spring集成分页的jar和截图

    描述中提到的“flex和spring集成分页”是指将Flex客户端与Spring框架结合,实现服务器端数据的分页展示。Spring是一个广泛使用的Java企业级应用开发框架,提供IoC(Inversion of Control)容器、数据访问、事务管理...

    FLEX_Spring环境搭建

    要将FLEX与Spring集成,我们需要使用Spring BlazeDS Integration库。BlazeDS是Adobe提供的一个免费服务器端组件,它提供了与FLEX客户端进行AMF(Action Message Format)通信的能力。通过BlazeDS,FLEX应用可以直接...

    flex 结合spring activemq 做的一个简易聊天室

    5. Flex与Spring集成:为了使Flex客户端能够与Spring服务通信,通常会使用Spring BlazeDS Integration项目。BlazeDS是Spring提供的一个开源项目,提供了一个轻量级的HTTP/HTTPS服务器,用于在Flex客户端和Spring应用...

    flex+blazeds+spring

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

    flex blazeds spring集成

    Flex Blazeds Spring集成是将Adobe的Flex前端技术与Spring框架后端服务相结合的一种开发模式。这个DEMO展示了如何在Flex客户端应用中利用Spring框架来管理和服务通信,从而实现更高效、灵活的分布式应用程序。 Flex...

    Flex 与 Spring整合

    Flex与Spring整合是将Adobe Flex前端技术和Spring后端框架相结合,实现富互联网应用程序(Rich Internet Applications,RIA)的开发。这种结合使得开发者可以利用Flex的交互性和表现力,以及Spring的强大企业服务...

    spring-flex-1.5.2

    1. **Flex 与 Spring 集成**:Spring Flex 提供了 `RemotingDestination` 和 `MessageBroker`,使得 Flex 客户端可以通过 AMF(Action Message Format)协议与 Spring 上下文中的bean进行交互。这简化了数据传输,...

    (XF - 8)Flex + Spring

    描述中提到的链接指向了一篇ITEYE博客文章,尽管描述为空,我们可以假设这篇文章详细介绍了如何将Flex与Spring集成,可能包括配置、数据绑定、远程方法调用(AMF)以及如何在Flex客户端与Spring服务器之间交换数据等...

    hibernate+flex+spring 整合,hibernate+flex+spring 集成

    - **配置Flex与Spring的通信**:使用Spring BlazeDS Integration或Spring Web Services为Flex客户端提供与Spring服务的接口。BlazeDS是Adobe提供的一个服务器端组件,可以实现AMF(Action Message Format)协议,使...

    flex经典实例(flexstroe)flex+spring+hibernate

    6. **flexstoreService**:这可能是一个包含Flex与Spring集成的服务层代码的目录,其中包含Spring配置文件(如applicationContext.xml)和Java服务类,这些类通过Spring的DI容器进行实例化,并通过AMF暴露给Flex...

    Pro Flex On Spring

    总结来说,"Pro Flex On Spring"这本书为我们提供了一个将Flex前端与Spring后端结合使用来构建现代企业级应用的完整蓝图。通过书中所提供的丰富知识点,开发者可以更深入地了解如何应对整合过程中的技术挑战,以及...

Global site tag (gtag.js) - Google Analytics