Spring+flex(Blazeds)注解方式创建项目

转自:http://szydnjw.javaeye.com/blog/852134

本人第一次发表文章,如有不妥,请指正。
   进入正题,spring+flex网上方法很多,但用注解的文章很少,现用注解的方式配置一个简单的实例。
   所用的开发环境eclipse3.5+flex4+spring3+blazeds(4.0.1.17657)
   ps:Blazeds版本最低为4.0.1.17657+
   因为用Blazeds所以SPRING就不必专门去下载了。先创建个基本FLEX+java的项目,相信大家一定多会。不会的去网上找下,一大推。主要是在让我们选择 blazeds war文件时,我们选择blazeds-spring.war(版本4.0.1.17657+)这样就自动把所有的JAR包多放到lib包下了包括SPRING的。

  首先配置WEB.XML
Java代码
  1. "1.0" encoding="UTF-8"?>   
  2. "-//Sun Microsystems, Inc.//DTD Web Application 2.3//EN" "http://java.sun.com/dtd/web-app_2_3.dtd">   
  3.   
  4.   
  5.     BlazeDS Spring Integration Application   
  6.     BlazeDS Spring Integration Application   
  7.   
  8.        
  9.         contextConfigLocation   
  10.            
  11.             /WEB-INF/spring/infrastructure-config.xml,    
  12.             /WEB-INF/spring/security-config.xml,   
  13.             /WEB-INF/spring/app-config.xml   
  14.            
  15.        
  16.        
  17.        
  18.         springSecurityFilterChain   
  19.         class>org.springframework.web.filter.DelegatingFilterProxyclass>   
  20.        
  21.   
  22.        
  23.       springSecurityFilterChain   
  24.       /*   
  25.        
  26.   
  27.        
  28.        
  29.         class>flex.messaging.HttpFlexSessionclass>   
  30.        
  31.   
  32.        
  33.         class>org.springframework.web.context.ContextLoaderListenerclass>   
  34.        
  35.   
  36.           
  37.        
  38.         flex   
  39.         class>org.springframework.web.servlet.DispatcherServletclass>   
  40.         1   
  41.        
  42.   
  43.   
  44.   
  45.        
  46.         flex   
  47.         /messagebroker/*   
  48.         
  49.   
  50.        
  51.         index.html   
  52.         index.htm   
  53.        
  54.   
  55.        
  56.        
  57.   
  58.   


    接着创建FLEX APP命名随便,我现在命名为index.mxml,代码如下
Java代码
  1. "1.0" encoding="utf-8"?>   
  2. "http://ns.adobe.com/mxml/2009"    
  3.                xmlns:s="library://ns.adobe.com/flex/spark"    
  4.                xmlns:mx="library://ns.adobe.com/flex/mx" minWidth="955" minHeight="600">   
  5.        
  6.            
  7.        
  8.   
  9.   
  10.   
  11.   
  12.        
  13.         
  14.             import mx.controls.Alert;   
  15.             import mx.rpc.events.ResultEvent;   
  16.                
  17.             protected function button1_clickHandler(event:MouseEvent):void  
  18.             {   
  19.                 service.firstApp("Flex");   
  20.             }   
  21.             protected function remote_resultHandler(event:ResultEvent):void  
  22.             {   
  23.                 Alert.show(String(event.result));   
  24.             }   
  25.         ]]>   
  26.        
  27.   
  28.        
  29.            
  30.         "service" destination="myService" result="remote_resultHandler(event)" endpoint="messagebroker/amf"/>   
  31.        
  32.     "72" y="101" label="按钮" click="button1_clickHandler(event)"/>   
  33.   

   接着是JAVA端程序
   MyService.java
Java代码
  1. package com.test.service;   
  2.   
  3. import org.springframework.flex.remoting.RemotingDestination;   
  4. import org.springframework.flex.remoting.RemotingInclude;   
  5. import org.springframework.stereotype.Service;   
  6.   
  7.   
  8. @Service("myService")   
  9. @RemotingDestination(channels = { "my-amf""my-secure-amf" })   
  10. public class MyService {   
  11.        
  12.     @RemotingInclude  
  13.     public String firstApp(String info){   
  14.            
  15.         System.out.println(info);//从FLEX端获取的信息   
  16.            
  17.         return "Hello World "+info;//返回给FLEX   
  18.            
  19.     }   
  20.   
  21. }  

   然后我们在WebContent/WEB-INF/spring下,修改app-config.xml SPRING配置文件。该文件是在选择BLAZEDS-SPRING.WAR后自动生成的。
   修改后的 app-config.xml
  
Java代码
  1. "1.0" encoding="UTF-8"?>   
  2. "http://www.springframework.org/schema/beans"  
  3.     xmlns:security="http://www.springframework.org/schema/security"  
  4.     xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:context="http://www.springframework.org/schema/context"  
  5.     xsi:schemaLocation="   
  6.         http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans-3.0.xsd   
  7.         http://www.springframework.org/schema/security http://www.springframework.org/schema/security/spring-security-3.0.xsd   
  8.         http://www.springframework.org/schema/context http://www.springframework.org/schema/context/spring-context-3.0.xsd">   
  9.   
  10.     package="com.test.service" />   
  11.        
  12.   

    好了,启动TOMCAT,然后输入地址,我的是
  http://localhost:9090/oa/index.html
  应该前后台多有东西输出了吧!祝大家好运!