web.xml:
<?xml version="1.0" encoding="UTF-8"?>
<web-app xmlns="http://java.sun.com/xml/ns/j2ee" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://java.sun.com/xml/ns/j2ee http://java.sun.com/xml/ns/j2ee/web-app_2_4.xsd"
version="2.4">
<display-name>amusement server</display-name>
<context-param>
<param-name>contextConfigLocation</param-name>
<param-value>
/WEB-INF/spring/*-config.xml,classpath:spring-*.xml
</param-value>
</context-param>
<filter>
<filter-name>springSecurityFilterChain</filter-name>
<filter-class>org.springframework.web.filter.DelegatingFilterProxy</filter-class>
</filter>
<filter-mapping>
<filter-name>springSecurityFilterChain</filter-name>
<url-pattern>/*</url-pattern>
</filter-mapping>
<listener>
<listener-class>org.springframework.web.context.ContextLoaderListener</listener-class>
</listener>
<listener>
<listener-class>flex.messaging.HttpFlexSession</listener-class>
</listener>
<servlet>
<servlet-name>flex</servlet-name>
<servlet-class>org.springframework.web.servlet.DispatcherServlet</servlet-class>
<load-on-startup>1</load-on-startup>
</servlet>
<servlet-mapping>
<servlet-name>flex</servlet-name>
<url-pattern>/messagebroker/*</url-pattern>
</servlet-mapping>
</web-app>
spring flex 配置文件结构:
flex message broker配置:
<?xml version="1.0" encoding="UTF-8"?>
<!-- app global setting -->
<beans xmlns="http://www.springframework.org/schema/beans"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:context="http://www.springframework.org/schema/context"
xmlns:aop="http://www.springframework.org/schema/aop" xmlns:tx="http://www.springframework.org/schema/tx"
xmlns:flex="http://www.springframework.org/schema/flex"
xsi:schemaLocation="http://www.springframework.org/schema/beans
http://www.springframework.org/schema/beans/spring-beans-2.5.xsd
http://www.springframework.org/schema/context
http://www.springframework.org/schema/context/spring-context-2.5.xsd
http://www.springframework.org/schema/aop http://www.springframework.org/schema/aop/spring-aop-2.5.xsd
http://www.springframework.org/schema/tx http://www.springframework.org/schema/tx/spring-tx-2.5.xsd
http://www.springframework.org/schema/flex http://www.springframework.org/schema/flex/spring-flex-1.0.xsd"
default-dependency-check="none">
<!-- flex message broker -->
<flex:message-broker id="messageBroker" services-config-path="/WEB-INF/flex/services-config.xml">
<flex:message-service
default-channels="my-streaming-amf,my-longpolling-amf,my-polling-amf" />
<flex:secured>
<flex:secured-endpoint-path pattern="**/messagebroker/**" access="ROLE_USER" />
</flex:secured>
</flex:message-broker>
<bean id="test" class="com.the4thcity.Test"></bean>
</beans>
flex-servlet.xml
<?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">
<flex:remoting-destination ref="test" message-broker="messageBroker"/>
</beans>
security-config.xml:
<?xml version="1.0" encoding="UTF-8"?>
<beans:beans xmlns="http://www.springframework.org/schema/security"
xmlns:beans="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
http://www.springframework.org/schema/security http://www.springframework.org/schema/security/spring-security-3.0.xsd">
<http>
<anonymous enabled="false"/>
<form-login default-target-url="/secured/secured.html" login-page="/login.jsp" />
</http>
<authentication-manager>
<authentication-provider>
<user-service>
<user name="john" password="john" authorities="ROLE_USER" />
<user name="admin" password="admin" authorities="ROLE_USER, ROLE_ADMIN" />
<user name="guest" password="guest" authorities="ROLE_GUEST" />
</user-service>
</authentication-provider>
</authentication-manager>
</beans:beans>
测试:
<?xml version="1.0" encoding="utf-8"?>
<s:Application xmlns:fx="http://ns.adobe.com/mxml/2009"
xmlns:s="library://ns.adobe.com/flex/spark"
xmlns:mx="library://ns.adobe.com/flex/mx" minWidth="955" minHeight="600" creationComplete="application1_creationCompleteHandler(event)">
<fx:Declarations>
<!-- Place non-visual elements (e.g., services, value objects) here -->
</fx:Declarations>
<fx:Script>
<![CDATA[
import mx.events.FlexEvent;
import mx.messaging.ChannelSet;
import mx.messaging.channels.AMFChannel;
import mx.rpc.AsyncToken;
import mx.rpc.events.FaultEvent;
import mx.rpc.remoting.RemoteObject;
private var ro :RemoteObject;
private var channelSet :ChannelSet = new ChannelSet();
protected function application1_creationCompleteHandler(event:FlexEvent):void
{
ro = new RemoteObject();
var amfChannel :AMFChannel = new AMFChannel();
amfChannel.uri = "http://127.0.0.1:8080/ManagementSys/messagebroker/amf";
channelSet.addChannel(amfChannel);
ro.channelSet =channelSet;
ro.destination = "test";
ro.addEventListener(FaultEvent.FAULT,function(e:FaultEvent):void{
trace(e.message,"\n",e.fault.faultCode);
});
//asyncToken.addResponder(
}
protected function button1_clickHandler(event:MouseEvent):void
{
var asyncToken :AsyncToken= ro.channelSet.login("john","john");
ro.test();
}
]]>
</fx:Script>
<s:Button label="test" click="button1_clickHandler(event)"/>
</s:Application>
分享到:
相关推荐
2. **Spring与BlazeDS集成**:Spring BlazeDS Integration是Spring框架的一部分,它提供了一套完整的工具集,包括Spring配置、Spring MVC适配器和数据传输对象(DTO),以简化BlazeDS与Spring应用的集成。...
5. **安全性**:配置安全策略,确保Flex与Spring间的通信安全可靠。 综上所述,这个压缩包提供了一套完整的Spring与BlazeDS整合的实例,包括源代码和可能的教程,对于学习和掌握两者之间的集成技术非常有帮助。通过...
3. **配置MessageBroker**:在Spring配置中,配置`<flex:message-broker>`元素,它定义了Spring与BlazeDS之间的连接。在此元素内,可以指定Remoting destinations和频道配置。 4. **暴露Spring Bean**:通过`...
配置Spring的DispatcherServlet和 BlazeDS的Gateway,即可实现AMF数据格式的自动序列化和反序列化,大大简化了前后端的数据交换。 **Flex应用的开发流程** 1. 创建Flex项目:使用Flex Builder或IntelliJ IDEA等工具...
2. 配置MessageBroker:在Spring上下文中,通过标签配置BlazeDS的MessageBroker,使Spring Bean可以通过AMF与Flex客户端通信。 五、Flex客户端开发 1. 创建Flex项目:使用Flex Builder或Flash Builder创建新项目。...
在`initialize`方法中,根据传入的配置参数设置服务ID、目的地工厂、适配器等,确保Spring Bean能够在BlazeDS启动时正确地导出。 5. **Spring与BlazeDS的进一步集成**: 除了基本的远程调用,还可以利用Spring的...
通过分析这个`springblazeds`项目源码,你可以全面了解Spring和BlazDS的集成方式,以及如何利用它们创建高性能、易维护的RIA应用。这不仅有助于提升你的Java和Flex技术,还能帮助你在实际项目中解决类似问题。
Flex+blazeDS+Spring官方Demo,环境搭建,内含十几个例子,从易到难,包括spring消息,spring安全,注解方式和非注解配置文件方式,十分好用。内含有tomcat,可直接启动并运行用户手册。
在创建项目时,选择`blazeds-spring.war`文件,这样BlazDS会自动包含所有必要的JAR包,包括Spring的相关库。 关键的配置文件是`WEB-INF/web.xml`,这是每个Java Web应用程序的核心配置文件。在这个例子中,我们看到...
**介绍**:本节介绍如何使用Spring Security框架来保护BlazeDS目的地的安全性。 **简单的Spring Security配置**: - 通过配置`HttpSecurity`对象来启用基本的身份验证和授权机制。 - 示例配置: ```java @...
配置BlazeDS涉及到Spring上下文配置和BlazeDS配置文件(services-config.xml)。在Spring配置中,需要定义要公开的服务bean,并指定其AMF通道。在BlazeDS配置文件中,定义了通道集、目的地以及安全设置,确保数据...
4. **安全性**:Spring的安全模块可以与Flex应用结合,实现用户认证和授权。 FlexBlazedsApp可能包含了以下组件: 1. **Flex客户端**:包含Flex源代码,如.mxml和.as文件,用于构建用户界面和处理与服务器的交互。 ...
- 考虑安全性,为Blazeds服务设置适当的安全策略,防止未授权访问。 通过以上步骤,你可以成功地将Blazeds与Spring整合,实现Flex客户端与Java后端服务的高效交互。记得在实际操作中根据项目的具体需求调整和优化...
5. **安全和事务管理**:由于BlazeDS是在HTTP层面上工作的,因此可以利用Spring的安全和事务管理功能来保护远程服务和确保操作的一致性。 6. **错误处理和调试**:BlazeDS提供了详细的错误信息,可以帮助开发者快速...
总的来说,“BlazeDS整合Spring实现增删改查”涉及的技术点包括BlazeDS的配置、Spring的Bean管理、Flex客户端的创建、AMF通信机制以及在RIA中的CRUD操作。这个主题对于想要构建基于Flex的富互联网应用,并希望利用...
为了实现Spring与BlazeDS之间的集成,还需要在Spring配置文件中定义BlazeDS的Message Broker。这通常涉及到以下步骤: - 定义一个`org.springframework.messaging.simp.config.MessageBrokerRegistry` bean。 - 使用...
3. 安全性:在使用BlazeDS时,要注意数据的安全传输,防止跨站脚本攻击(XSS)和跨站请求伪造(CSRF)等安全问题。 综上所述,Flex+Java+Spring+Hibernate+BlazeDS的整合,能构建出高性能、易维护的Web应用,提供...