`
robinsoncrusoe
  • 浏览: 746652 次
  • 性别: Icon_minigender_2
  • 来自: 深圳
社区版块
存档分类
最新评论

Flex整合Spring

    博客分类:
  • JAVA
阅读更多
原文:http://ljhzzyx.blog.163.com/blog/static/383803122008111853323499/


利用别人写的SpringFactory类,将Flex和Spring整合在一起,配置步骤如下:
1.添加Spring,在web.xml文件里添加配置
<context-param>
    <param-name>contextConfigLocation</param-name>
    <param-value>/WEB-INF/applicationContext.xml</param-value>
</context-param>
  
<listener>
<listener-class>org.springframework.web.context.ContextLoaderListener</listener-class>
</listener>

2.在flex的services-config.xml文件里添加Spring工厂
<factories>
    <factory id="spring" class="com.flex.factories.SpringFactory"/>
</factories>

3.在Spring里面定义bean
<bean id="testClass" class="com.....TestService">
    <property name="dataSource" ref="dataSource"/>
</bean>

4.在flex的远程对象配置文件里配置远程对象,这里要指定远程对象的创建工厂为第2步配置的工厂,远程对象的source要指向Spring里定义的bean
<destination id="test">
    <properties>
    <factory>spring</factory>
    <source>testClass</source>
    </properties>
</destination>

5.在页面就可以使用远程对象了
private function send():void{
    test.doSomething(...);
}
...

<mx:RemoteObject id="test" destination="test" result="..."/>

贴上SpringFactory类:
package com.flex.factories;

import org.springframework.context.ApplicationContext;
import org.springframework.web.context.support.WebApplicationContextUtils;
import org.springframework.beans.BeansException;
import org.springframework.beans.factory.NoSuchBeanDefinitionException;

import flex.messaging.FactoryInstance;
import flex.messaging.FlexFactory;
import flex.messaging.config.ConfigMap;
import flex.messaging.services.ServiceException;

public class SpringFactory implements FlexFactory{
    private static final String SOURCE = "source";

    public void initialize(String id, ConfigMap configMap) {}

    public FactoryInstance createFactoryInstance(String id, ConfigMap properties){
        SpringFactoryInstance instance = new SpringFactoryInstance(this, id, properties);
        instance.setSource(properties.getPropertyAsString(SOURCE, instance.getId()));
        return instance;
    } // end method createFactoryInstance()

    public Object lookup(FactoryInstance inst){
        SpringFactoryInstance factoryInstance = (SpringFactoryInstance) inst;
        return factoryInstance.lookup();
    }

    static class SpringFactoryInstance extends FactoryInstance{
        SpringFactoryInstance(SpringFactory factory, String id, ConfigMap properties){
            super(factory, id, properties);
        }

        public String toString(){
            return "SpringFactory instance for id=" + getId() + " source=" + getSource() + " scope=" + getScope();
        }

        public Object lookup() {
            ApplicationContext appContext = WebApplicationContextUtils.getWebApplicationContext(flex.messaging.FlexContext.getServletConfig().getServletContext());
            String beanName = getSource();

            try{
                return appContext.getBean(beanName);
            }catch (NoSuchBeanDefinitionException nexc){
                ServiceException e = new ServiceException();
                String msg = "Spring service named '" + beanName + "' does not exist.";
                e.setMessage(msg);
                e.setRootCause(nexc);
                e.setDetails(msg);
                e.setCode("Server.Processing");
                throw e;
            }catch (BeansException bexc){
                ServiceException e = new ServiceException();
                String msg = "Unable to create Spring service named '" + beanName + "' ";
                e.setMessage(msg);
                e.setRootCause(bexc);
                e.setDetails(msg);
                e.setCode("Server.Processing");
                throw e;
            }
        }
       
    }

}


分享到:
评论

相关推荐

    Flex整合spring,hibernate

    Flex整合Spring和Hibernate是Web开发中的一个重要主题,它涉及到富客户端应用与后端服务的高效交互。Flex作为Adobe推出的富互联网应用程序(RIA)框架,提供了一种强大的方式来创建交互式、图形化的用户界面,而...

    Flex整合spring

    Flex整合spring

    flex整合spring的例子

    Flex与Spring的整合是将富客户端(Flex)与企业级后端服务(Spring)结合,以实现更高效、更灵活的Web应用开发。这个例子旨在展示如何在Flex前端与Spring后端之间建立通信,以便利用Spring框架的强大功能,如依赖...

    flex整合spring需要的spring相关包

    在整合Flex和Spring时,关键在于如何使Flex客户端能够与Spring服务端进行通信。以下是一些核心知识点: 1. **AMF通信协议**:Adobe Message Format (AMF) 是Flex与服务器之间进行数据交换的高效二进制格式。Spring ...

    flex 整合 spring+struts2+ibatis - 乐的日志 - 网易博客.htm

    flex 整合 spring+struts2+ibatis - 乐的日志 - 网易博客.htm flex 整合 spring+struts2+ibatis - 乐的日志 - 网易博客.htm

    Flex整合spring.chm

    :)Flex整合spring,需要的jar包网上有下载

    flex整合Spring

    #### 二、Spring与Flex整合概述 在Flex与Spring的整合过程中,主要涉及以下几个关键步骤: 1. **配置Spring容器**:在Web应用启动时加载Spring容器,并指定Spring配置文件的位置。 2. **定义SpringFactory**:...

    Flex整合Spring实现aop日志管理

    本文将深入探讨如何使用Flex与Spring框架整合,实现AOP(面向切面编程)来达到日志管理的目标。AOP允许我们在不修改原有业务逻辑的情况下,插入日志记录代码,使得日志功能的实现更加灵活和高效。 首先,让我们理解...

    flex+spring flex整合

    【整合 Adobe Flex 和 Spring】 Adobe Flex 作为一款强大的富互联网应用程序(RIA)开发框架,能够创建具有丰富用户体验的用户界面。然而,为了实现后端数据处理和业务逻辑,开发者通常会选择像Spring这样的Java EE...

    flex整合spring

    由于项目需要,我将flex与spring进行了整合,希望对需要的人能有些帮助

    Flex 与 Spring整合

    Flex与Spring整合是将Adobe Flex前端技术和...整合过程中,源码和相关工具的使用可以帮助理解并优化这个过程,例如`Flex整合.docx`文档可能包含了详细的步骤和示例代码,对于学习和实践Flex与Spring的整合非常有帮助。

    Flex4 spring整合实例

    在本整合实例中,我们将探讨如何将Adobe Flex4与Spring框架无缝集成,以实现更高效、更灵活的应用开发。 Flex4是Adobe Flex SDK的一个版本,它提供了强大的用户界面组件和动画效果,以及ActionScript 3.0编程语言的...

    flex 整合java spring

    标题中的“flex 整合java spring”指的是在Java Spring框架中集成Adobe Flex技术,以便创建富互联网应用程序(RIA)。Flex是一种用于构建具有交互性和动态图形的Web应用的开源框架,而Spring是Java企业级应用开发的...

    flex整合与spring整合 教程

    Flex整合与Spring整合教程 本教程主要关注在企业级应用开发中如何将Adobe Flex前端与Spring后端进行有效的集成,以便实现丰富的用户界面与强大的Java服务间的无缝通信。Flex作为一个强大的RIA(Rich Internet ...

    flex+Spring+Hibernate整合配置详解

    Flex+Spring+Hibernate 整合是企业级应用开发中常见的一种技术栈组合,它结合了Flex前端的富互联网应用程序(RIA)开发能力、Spring框架的依赖注入和事务管理功能,以及Hibernate持久化框架的数据库操作便捷性。...

    Pro Flex On Spring

    Flex与Spring的整合并不是没有挑战。例如,需要处理不同技术栈之间的数据格式转换,以及保证两个技术栈的安全性。在书中,作者或许会讨论这些问题,并提供解决方案。Flex应用可能需要将后端传递来的Java对象转换为...

    FLex整合hibernate spring

    本文主要讲解了如何将Adobe Flex、Spring和Hibernate这三种技术进行整合,构建一个强大的前端与后端交互的Web应用程序。 首先,我们要理解这三个技术的基本概念。Flex是一种用于创建富互联网应用程序(RIA)的前端...

    整合flex和spring常遇到的问题

    ### 整合Flex与Spring常遇到的问题 在实际开发过程中,将Adobe Flex与Spring框架进行集成是一项复杂的任务,尤其对于初次尝试的开发者来说更是如此。本文根据多年的实践经验,总结了在整合Flex与Spring时常见的几个...

Global site tag (gtag.js) - Google Analytics