`

Spring BlazeDS Integration 的helloworld程序

    博客分类:
  • Flex
阅读更多

一 前期:
引用

spring-flex-1.0.1.RELEASE
Java 5 or higher
Spring 2.5.6 or higher(需要spring.jar和spring_mvc.jar)
Adobe BlazeDS 3.2 or higher (war包下的WEB-INF文件夹)
把相关jar放入WEB-INF/lib

然后添加BlazeDS到web项目中(可参考前一篇BlazeDS)

二 详细步骤(参考spring-flex-1.0.1.RELEASE 的refrence)
要点:
引用

1.springMVC拦截请求(web.xml文件)
2.配置spring的配置文件(设置拦截处理的beans),映射
3.编写并配置要映射为RemoteObject的bean
4.修改services-config.xml(重要)


1.springMVC拦截请求(web.xml文件)
这里制定了spring的配置文件为
/WEB-INF/config/web-application-config.xml
 <!-- Http Flex Session attribute and binding listener support -->
    <listener>
        <listener-class>flex.messaging.HttpFlexSession</listener-class>
    </listener>

<!-- The front controller of this Spring Web application, responsible for handling all application requests -->
<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>
<!-- Map all /messagbroker requests to the DispatcherServlet for handling -->
<servlet-mapping>
    <servlet-name>Spring MVC Dispatcher Servlet</servlet-name>
    <url-pattern>/messagebroker/*</url-pattern>
</servlet-mapping>    



2.配置spring的配置文件(设置拦截处理的beans),映射
<?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-2.5.xsd
           http://www.springframework.org/schema/flex 
           http://www.springframework.org/schema/flex/spring-flex-1.0.xsd">
<!--这里有三种方法配置处理请求的flex MessageBroker-- 任意选择其中一种-->
<!--方法一 可以指定services- config.xml文件位置 -->
<bean id="_messageBroker" class="org.springframework.flex.core.MessageBrokerFactoryBean" >
	<property name="servicesConfigPath" 
                  value="classpath*:services- config.xml" />
</bean>    	

<!--方法二 这里需要引入一个json的包(具体我忘了),否则报错
<flex:message-broker services-config-path="classpath*:services-config.xml"/>   
-->
<!--方法3 也需要引入json包,否则报错 默认在/WEB-INF/flex/services-config.xml -->
<flex:message-broker/>
 --> 

<!--============  mapping ============-->
<!-- Maps request paths at /* to the BlazeDS MessageBroker -->
<!--这里的_messageBroker为上面那个bean的id-->
<bean class="org.springframework.web.servlet.handler.SimpleUrlHandlerMapping">
    <property name="mappings">
        <value>
            /*=_messageBroker
        </value>
    </property>
</bean>

<!-- Dispatches requests mapped to a MessageBroker -->
<bean class="org.springframework.flex.servlet.MessageBrokerHandlerAdapter"/>    



</beans>




3.编写并配置要映射为RemoteObject的bean
(有3种方法,可参考包自带的参考文献)
<bean id="helloWorldService" class="HelloWorld"></bean>
<flex:remoting-destination ref="helloWorldService" />

这样一个destination id为“helloWorldService”的RemoteObject就好了

4.修改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> 	


还要在<services>中加入
<default-channels>
<channel ref="my-amf" />
</default-channels>

然后删掉remoting-config.xml里面上面那段,问我为什么我不知道,反正不怎么做
客户端一调用就fault(对象已拿到)但不存在channel之类的错误


最后客户端
<mx:RemoteObject id="helloRO" destination="helloWorldService" result="resultHandler(event)" fault="faultHandler(event)"/>

分享到:
评论

相关推荐

    Spring BlazeDS Integration 1.0.0

    **Spring BlazeDS Integration 1.0.0** 是一个关键的框架,它为Spring应用程序与Adobe Flex客户端之间的通信提供了一种高效且灵活的解决方案。这个版本的发布标志着开发者可以更轻松地利用Flex的富互联网应用(RIA)...

    Spring BlazeDS Integration Spring集成BlazeDS

    **Spring BlazeDS Integration** 是一个强大的技术组合,它允许开发者使用Spring框架在后端服务器上进行业务逻辑处理,同时利用Adobe Flex在前端构建富互联网应用程序(RIA)。BlazeDS是Adobe提供的一种开源服务器端...

    Flex、Spring整合:Spring BlazeDS Integration

    标题中的“Flex、Spring整合:Spring BlazeDS Integration”指的是在Java后端使用Spring框架与前端Flex应用程序进行集成的一种技术方案。BlazeDS是Adobe提供的一个开源项目,它为富互联网应用(RIA)提供了数据推送...

    flex+Spring+Hibernate+Cairngorm+BlazeDS+Spring BlazeDS Integration整合框架

    使用flex 4.5 + Spring 3.0 + Hibernate 3.3 + Cairngorm 2.2.1 + BlazeDS 3.3.0 + Spring BlazeDS Integration 1.0.3整合出的一个登录的小demo·

    Spring整合flex-Spring BlazeDS Integration-带项目demo

    Spring BlazeDS Integration是Spring框架的一个组件,它提供了与Adobe Flex的无缝集成,允许后端Java服务与前端Flex客户端进行通信。这个项目demo提供了实际操作的例子,帮助开发者理解和实现Spring与Flex的结合。 ...

    flex-spring blazeds integration基本框架搭建记录

    《Flex-Spring BlazeDS 整合基础架构构建详解》 在现代Web开发中,富互联网应用程序(Rich Internet Applications,简称RIA)的需求日益增长,而Flex作为Adobe提供的RIA开发框架,因其强大的图形用户界面和与服务器...

    flex3集成BlazeDS的HelloWorld

    此外,"Flex3与BlazeDS HelloWorld 详解.doc"可能是提供更详细步骤和解释的文档,包括如何配置BlazeDS、创建Flex3应用、编写服务器端代码,以及如何调试和解决可能出现的问题。而"blazedsServerApp"可能是一个示例...

    spring blazeds 整合实例(源码)

    - `companymgr`:可能是公司管理相关的应用程序,展示了如何通过Spring和BlazeDS进行业务逻辑处理。 - `spring-messaging`:可能涉及到Spring的消息传递机制,如AMF(Action Message Format),这是BlazeDS用于与...

    BlazeDS 整合 Flex HelloWorld 示例

    BlazeDS 整合 Flex HelloWorld 示例是一个初学者入门教程,主要介绍了如何在JavaEE环境中集成BlazeDS和Flex,创建一个简单的远程调用服务。BlazeDS是一个开源项目,提供了与Adobe Flex之间的实时数据交互,使得Flex...

    Spring BlazeDS + flex

    ### Spring BlazeDS 与 Flex 集成应用详解 #### 一、引言 随着企业级应用程序需求的多样化,不同的技术栈之间的集成变得越来越重要。其中,Java 和 Flex 的结合便是一个典型例子。Spring框架作为Java领域内的重量级...

    Adobe Flex 和 Spring 相关配置整合

    为了使得Flex客户端能够方便地与Spring管理的Bean交互,开发者可以借助开源框架BlazeDS和Spring BlazeDS Integration。 BlazeDS是Adobe的开源项目,它为Flex和基于Java的后端应用之间提供了远程调用(Remote ...

    Java+Flex+BlazeDS HelloWorld例子

    这篇名为"Java+Flex+BlazeDS HelloWorld例子"的博客文章,很可能是对如何使用这些技术进行基本的示例演示。通过阅读这篇文章,我们可以学习到如何配置和运行一个简单的Java和Flex应用,以及BlazeDS在其中的角色。 1...

    flex+spring flex整合

    整合Flex和Spring的关键在于让Flex客户端能够方便地访问Spring管理的Bean,而BlazeDS和Spring BlazeDS Integration就是为了实现这一目标。BlazeDS是Adobe的开源项目,它提供了一个中间层,使得基于Flex的前端能够...

    spring-blazeds结合项目源码

    Spring通过Spring BlazeDS Integration项目实现了与BlazDS的无缝对接。该项目提供了一组Spring Bean定义,使得在Spring应用上下文中配置BlazDS服务变得更加简单。通过Spring,你可以声明式地定义...

    Spring MVC+BlazeDS+Flex框架实践

    Spring MVC、BlazeDS和Flex是构建富互联网应用程序(Rich Internet Applications, RIA)的三个关键技术,它们在现代Web开发中扮演着重要角色。本文将深入探讨这些技术的结合使用,以及如何通过它们来实现高效的前后...

    spring+blazeDS+flex4 例子

    总结来说,Spring、BlazeDS和Flex4的整合,为开发者提供了一种高效、灵活的方式来构建动态的、交互性强的Web应用程序。Spring处理后台业务逻辑,BlazeDS作为数据传输桥梁,而Flex4则专注于前端用户界面的设计。通过...

    spring-flex官方文档

    总之,Spring BlazeDS Integration为构建基于Spring的RIA提供了强大的支持,使得开发者能够充分利用Spring的强大功能和Adobe Flex的前端技术优势。通过上述介绍的知识点,可以更好地理解如何实现Spring与Flex的有效...

Global site tag (gtag.js) - Google Analytics