配置Flex+BlazeDS+Spring
来源:互联网 发布:网络诈骗案 编辑:程序博客网 时间:2024/04/30 04:52
开发环境:Eclipse+FlexBuilder.其中Flex Builder可以集成到Eclipse中.
1. 准备程序包:BlazeDS的开发包.Spring-Flex 1.0
2. 创建一个web项目.把源代码目录改为javasrc以便和flex的源代码区分开来.
3. 创建java服务类.代码如下:
package cn.hk.demo.service.impl;
import cn.hk.demo.service.HelloService;
public class HelloServiceImpl implements HelloService
{
public String sayHello()
{
return "Hello Flexwith Spring and BlazeDS";
}
}
4. 配置BlazeDS环境.
解压blazeds.war.把WEB-INF中的flex目录放到工程的WEB-INF目录下.里面的.xml文件是配置flex和java通信的默认channel和java adapter.如果不进行其他的配置可以不对这些文件进行修改.在web.xml中添加flex的listener代码如下:
<listener>
<listener-class>flex.messaging.HttpFlexSession</listener-class>
</listener>
接着添加BlazeDS的依赖包就可以完成BlazeDS的配置.
5. 增加Spring支持.
把Spring-flex的jar添加的项目运行库中.配置web.xml加入以下内容:
<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/spring-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>
以上是添加Spring DispatcherServlet配置.让SpringDispatcherServlet来转发Flex的请求.这样可以让后台的代码利用Spring的特性.并且服务也可以通过Spring来暴露.
在WEB-INF中创建spring-config.xml文件.在不结合Spring的情况下BlazeDS的Servlet是需要在web.xml中配置.现在只须把BlazeDS的相关类托管给Spring容器.spring-config.xml的配置如下:
<beanid="_messageBroker"
class="org.springframework.flex.core.MessageBrokerFactoryBean">
</bean>
<bean
class="org.springframework.web.servlet.handler.SimpleUrlHandlerMapping">
<propertyname="mappings">
<value>/*=_messageBroker</value>
</property>
</bean>
<bean class="org.springframework.flex.servlet.MessageBrokerHandlerAdapter"/>
接着配置需要暴露的服务类:
<beanid="hello"class="org.springframework.flex.remoting.RemotingDestinationExporter">
<propertyname="messageBroker" ref="_messageBroker"/>
<property name="service"ref="helloService"/>
</bean>
<beanid="helloService" class="com.newland.demo.service.impl.HelloServiceImpl">
</bean>
至此后台整合完成.将项目发布到服务器中,启动服务器.
6. 添加Flex客户端.
如果Flex Builder不是独立的话.右击项目选择Flex Projec Nature->Add Flex Projec Nature
如果Flex Builder是独立的话.直接新建Flex项目.
选择后台技术为J2EE.
配置服务器路径,路径必须很发布的项目一致.修改flex文件输出目录,这个名称可以自己命名:
如果是集成环境的话还需要配置一下项目的Flex SDK路径.独立的Flex Builder就不用.
7. 编写客户端代码
<?xml version="1.0"encoding="utf-8"?>
<mx:Applicationxmlns:mx="http://www.adobe.com/2006/mxml"layout="absolute"creationComplete="init();" backgroundColor="White">
<mx:Script>
<![CDATA[
import mx.managers.IBrowserManager;
importmx.rpc.events.FaultEvent;
importmx.rpc.events.ResultEvent;
importmx.managers.BrowserManager;
importmx.controls.Alert;
importmx.rpc.remoting.mxml.RemoteObject;
private function init():void
{
varbrowerManager:IBrowserManager =BrowserManager.getInstance();
browerManager.init();
varurl:String=browerManager.url;
varurls:Array=url.split("/");
varremote:RemoteObject=newRemoteObject();
remote.destination="hello";
remote.addEventListener(ResultEvent.RESULT,result);
remote.addEventListener(FaultEvent.FAULT,fault);
remote.endpoint="http://"+urls[2]+"/"+urls[3]+"/messagebroker/amf"
remote.sayHello();
}
private functionresult(event:ResultEvent):void
{
Alert.show(event.result.toString(),"成功");
}
private functionfault(event:FaultEvent):void
{
Alert.show(event.fault.toString(),"失败");
}
]]>
</mx:Script>
</mx:Application>
RemoteObject对象的destination是要访问的服务的名称,也就是Spring所暴露出的服务的id.需要注意的是RemoteObject对象的endpoint的路径.如果不配置的话将找不到destination.
====================================================
实习的时候整的东西... remote.endpoint="http://"+urls[2]+"/"+urls[3]+"/messagebroker/amf"这个有更好的写法
- 配置Flex+BlazeDS+Spring
- Spring Flex BlazeDS
- Flex Spring JAVA BLAZEDS整合
- 推送消息----blazeds----flex----spring
- spring blazeds 安全配置
- Flex之旅--Flex+BlazeDS+Spring整合
- flex整合blazeds,spring,hibernate应用
- Flex+blazeDS+Spring+Tomcat的整合
- Flex+BlazeDS+Spring+Hibernate架构整合示例
- Flex+blazeDS+Spring+Tomcat的整合
- flex+blazeds+hibernate+spring小示例
- Flex+BlazeDS+Spring+Hibernate架构整合示例
- Flex+blazeDS+Spring+Tomcat的整合
- flex blazeds spring activemq 网站资料地址
- flex+spring+blazeds在MyEclipse下非常详细的结合配置
- Spring flex 搭建服务 之 架构原理(BlazeDS)和服务配置方法 (第一章)
- Spring flex 搭建服务 之 架构原理(BlazeDS)和服务配置方法 (第一章)
- flex与java--Blazeds学习(配置)
- 大学校园中绝世搞笑经典对联
- 基于Unitils和Spring解决一些单元测试的常见问题
- 第四章 程序设计
- VSAN是对SAN 部署的革命
- AjaxControlToolkit--SeaDragon
- 配置Flex+BlazeDS+Spring
- Rendering: repaint, reflow/relayout, restyle
- 《用TCP/IP进行通信》第一卷答案
- 编写高质量的Makefile
- ASP.NET中Get和Post的用法 Request.QueryString,Request.Form,Request.Params的区别 [转]
- 今天开了博客
- Xblo(JSP+Servlet+JavaBean+Oracle单用户Blog)
- C/C++学习建议(摘抄自:程序员2010年8月P61页)
- C#创建单实例应用程序