Spring ROO 快速整合BlazeDS

本文详细介绍了如何通过SpringSourceToolSuite和ROO进行Flex应用开发,包括安装配置、创建项目、生成Flex服务类、实现自定义Service层和控制器等关键步骤。同时,解释了如何在Flex中获取并使用由Blazeds部署的RemoteObject。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

 

1、首先安装最新版本SpringSourceToolSuite,安装后默认安装MAVEN和SPRING ROO,我用的ROO版本是1.1.3.RELEASE。


然后到以下地址下载最新的  flex roo addon 和   flex roo annotations  的jar包到ROO_HOME/bundle下

 

http://s3browse.springsource.com/browse/maven.springframework.org/snapshot/org/springframework/flex/roo/addon/org.springframework.flex.roo.addon/1.0.0.BUILD-SNAPSHOT/

 

http://s3browse.springsource.com/browse/maven.springframework.org/snapshot/org/springframework/flex/roo/addon/org.springframework.flex.roo.annotations/1.0.0.BUILD-SNAPSHOT/

 

2、在SST下新建一个ROO project, 按官方文档执行大概一下步骤:

 

persistence setup --provider HIBERNATE --database HYPERSONIC_IN_MEMORY

entity --class ~.domain.Topping --testAutomatically

field string --fieldName name --notNull --sizeMin 2
perform tests
controller all --package ~.web (记得先执行 perform tests )

 

3、FLEX BLAZEDS部分

 

在pom文件里加入:

 

<blazeds.version>4.0.0.14931</blazeds.version>


<pluginRepository>
<id>spring-roo-repository</id>
<name>Spring Roo Repository</name>
<url>http://spring-roo-repository.springsource.org/release</url>
</pluginRepository>

 

<!-- Blazeds -->
<dependency>
<groupId>com.adobe.blazeds</groupId>
<artifactId>blazeds-core</artifactId>
<version>${blazeds.version}</version>
</dependency>
<dependency>
<groupId>com.adobe.blazeds</groupId>
<artifactId>blazeds-common</artifactId>
<version>${blazeds.version}</version>
</dependency>
<dependency>
<groupId>com.adobe.blazeds</groupId>
<artifactId>blazeds-proxy</artifactId>
<version>${blazeds.version}</version>
</dependency>
<dependency>
<groupId>com.adobe.blazeds</groupId>
<artifactId>blazeds-remoting</artifactId>
<version>${blazeds.version}</version>
</dependency>

 

4、在roo Shell下执行:

 

 flex setup

 flex remoting all --package ~.domain

或者

entity --class ~.domain. Albums --testAutomatically

flex remoting scaffold --name ~.service.AlbumsService

 

5、这样就会根据domain对象生成相应的flex服务类。在启动服务器后,blazeds会自动部署它们。

 

6、ROO下自定义Service层和自定义controller 

 

执行controller class --class com.web.FlexController生成自定义controller,然后手动新建一个service类(如  FlexService  ),只要加入@Service的annotation,SPRING就会自动找到它们

 

如果再加上@RemotingDestination ,BLAZEDS会自动将该service发布,那样便可在flex里获取。在自定义的controller里,使用

@Autowired
private FlexService flexService;

就可以注入手动建立的  FlexService ,一般DAO层不需要建立,在ROO的domain模型里面已经可以完成大多数数据库操作。

 

7、在flex中获得BLAZEDS部署的RemoteObject


private function init():void {
var flexService:RemoteObject=new RemoteObject();
flexService.destination="flexService";
flexService.flextest.addEventListener("result",getTestHandler);
flexService.flextest();

}

public function getTestHandler (event:ResultEvent):void{
Alert.show(event.result.toString());
}

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值