1、
View页面中
<mx:RemoteObject
id="userManagementDataService" destination="UserManagementDataService"/>
2、
destination 对应于remote-config.xml中的destination节点
remote-config.xml
<destination id="UserManagementDataService">
<properties>
<factory>mySpring</factory>
<source>UserManagementDataService</source>
</properties>
</destination>
<factory>mySpring</factory>
就是通过它调用applicationContext.xml 中bean节点的,
<source>UserManagementDataService</source>
对应于bean节点的id
3、
mySpring是自己写的类,在services-config.xml中有相应的配置
<factories>
<factory id="mySpring" class="springFactory.SpringFactory"/>
</factories>
4、
这里的 class 是要自己写的类,也就是 SpringFactory 类
(注意这里要引入jar包 spring.jar(WebApplicationContextUtils))
(可能还要引的包有
commons-dbcp.jar , commons-pool-1.4.jar)
package springFactory;
import org.springframework.beans.BeansException;
import org.springframework.beans.factory.NoSuchBeanDefinitionException;
import org.springframework.context.ApplicationContext;
import org.springframework.web.context.support.WebApplicationContextUtils;
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;
}
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;
}
}
}
}
5、
在Web.xml中配置 applicationContext.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>
6、在applicationContext.xml 中配置
<bean
id="UserManagementDataService" class="dataService.UserManagementDataService">
</bean>
在页面中通过RemoteObject 通过Spring来调用J2EE中的方法了
相关推荐
通过解压和研究这些文件,开发者可以深入理解如何将前端Flex应用与后端Spring3.0+Hibernate3.0集成,从而构建出完整的分布式企业应用。 总的来说,"Flex pureMVC blazeDS j2ee Spring3.0+Hibernate3.0"这个项目结合...
Cairngorm和Flex一起用于构建用户界面和业务逻辑,而“Flex+Java”表明后端服务使用Java,可能是通过AMF(Action Message Format)进行Flex与Java之间的数据交换。后台分页标签确认了分页功能是重点。 在提供的...
在Flex和J2EE的整合中,Flex通常作为客户端的展示层,负责提供用户界面和动态交互,而J2EE则在服务器端处理业务逻辑和数据访问。这种结合使得应用能够利用Flex的图形化优势,同时受益于J2EE的稳定性和企业级服务。 ...
通过Flex提供直观的用户界面,LCDS实现前后端的数据通信,而J2EE则负责处理业务逻辑和数据存储。这种架构在企业级应用中非常常见,能提供高性能、易扩展的解决方案。不过,需要注意的是,实际项目中可能还需要考虑到...
这种方式提高了开发效率,简化了项目管理,使得Flex界面可以无缝地与Spring管理和控制的业务逻辑以及Hibernate持久化的数据交互。 总结起来,Flex+Spring+Hibernate的整合涉及到的主要知识点包括: 1. Flex ...
通过以上步骤,我们可以实现Flex客户端与J2EE服务器之间的数据交互,使得用户可以通过富交互的界面与后端业务逻辑进行通信。这种集成方式在企业级应用中非常常见,特别是在需要提供复杂用户界面和实时数据更新的场景...
总之,通过Eclipse WTP和BlazeDS,我们可以轻松地构建富互联网应用程序(RIA),将强大的Flex UI与健壮的J2EE后端服务相结合。这种技术组合使得开发者能够创建出响应式、动态的Web应用,提供超越传统HTML页面的交互...
此外,Flex可以与J2EE中的各种框架如Struts、Spring和Hibernate协同工作,实现MVC模式,提供数据持久化和事务管理等功能。 整合方案可能包括以下步骤: 1. 在Flex前端,使用Flex框架创建用户界面,ActionScript处理...
在J2EE环境中,Flex应用通常会与Java后台服务进行交互,例如使用Spring框架、Hibernate进行数据持久化,或者利用 BlazeDS 或 GraniteDS 这样的中间件来提供AMF通信。 在标签中提到了“jsp”、“j2ee”,这意味着这...
【集成 Flex, Spring, Hibernate 构建应用程序】 这篇文章探讨了如何将Adobe Flex这一富互联网应用程序(RIA)技术...这种技术栈在现代Web应用开发中具有广泛的实用价值,尤其适合需要高度交互和动态数据更新的场景。
搭建Flex的J2EE环境是将Flex应用与Java...完成上述步骤后,你就成功地搭建了一个Flex的J2EE环境,可以开发和调试使用Flex前端和J2EE后端的复杂应用了。记得在开发过程中不断测试和调试,确保各个组件之间的交互正常。
Flex整合Spring是一个重要的技术组合,它允许Flex前端应用与Spring后端服务紧密协作,实现数据交互和业务逻辑处理。在Flex应用程序中,我们通常利用远程对象(RemoteObject)或Web服务(如Hessian)来调用Spring管理...
标题“flex 与 j2ee 简单集成”指的是将Adobe Flex技术与Java Enterprise Edition (J2EE)平台相结合,实现前端用户界面与后端服务器功能的交互。Flex是一种用于构建富互联网应用程序(RIA)的开发框架,它基于...
8. **测试和调试**:通过模拟数据交互和单元测试来确保Flex与Java之间的通信正常工作,同时使用Flex的调试工具和Java的IDE(如Eclipse或IntelliJ IDEA)进行调试。 通过这个实例,开发者可以学习到如何将Flex的动态...
通过上述技术和示例程序的介绍,我们可以看到**Flex**、**Spring** 和**Hibernate** 的集成不仅可以创建出功能强大、用户体验优秀的RIA应用,而且还能充分利用各个框架的优势,提高开发效率和应用质量。这对于希望...
而J2EE(Java 2 Enterprise Edition)作为中间层技术,通过SPRING和HIbernate等框架,实现业务逻辑处理和数据访问,确保了系统的稳定性和数据管理的有效性。 该系统以用户为中心,强调个性化服务,不仅支持在线文字...
本文档介绍了一个利用Flex前端技术与J2EE后端技术结合的具体实现案例,主要涉及到的技术栈包括:Cairngorm、BlazeDS、Hibernate 和 Spring。该实例分为多个部分,此文档为第二部分,旨在帮助初学者逐步理解和掌握...
综合以上技术,本项目通过Flex 4.6构建美观且交互性强的前端,BlazeDS负责与Spring 3后端的通信,Spring 3协调业务逻辑,JPA和Hibernate实现数据持久化,而MySQL作为存储层。这种技术组合为在线书店提供了一个高效、...