您的位置:首页 > 编程语言 > Java开发

flex spring flex 整合

2013-04-10 09:15 190 查看
flex整合spring也有很多的例子,其实有很多例子很复杂。我在这就给大家介绍个最简单的,很实用。

flex--sdk 3.2以上

jdk 1.5 以上

spring 2.5.6 以[b] [/b]

负责Java通信插件 blazeDS 或 lcds

  
案例下载地址


 

web.xml

 

[xhtml]
view plaincopyprint?

<?xml version="1.0" encoding="UTF-8"?>  
  
<!DOCTYPE web-app PUBLIC "-//Sun Microsystems, Inc.//DTD Web Application 2.3//EN" "http://java.sun.com/dtd/web-app_2_3.dtd">  
  
<web-app>  
    <display-name>flex</display-name>  
    <description>LiveCycle Data Services Application</description>  
  
    <context-param>  
        <param-name>flex.class.path</param-name>  
        <param-value>  
            /WEB-INF/flex/hotfixes,/WEB-INF/flex/jars  
        </param-value>  
    </context-param>  
  
    <!-- Http Flex Session attribute and binding listener support -->  
    <listener>  
        <listener-class>flex.messaging.HttpFlexSession</listener-class>  
    </listener>  
  
    <!-- MessageBroker Servlet -->  
    <servlet>  
        <servlet-name>MessageBrokerServlet</servlet-name>  
        <display-name>MessageBrokerServlet</display-name>  
        <servlet-class>  
            flex.messaging.MessageBrokerServlet  
        </servlet-class>  
        <init-param>  
            <param-name>services.configuration.file</param-name>  
            <param-value>/WEB-INF/flex/services-config.xml</param-value>  
        </init-param>  
        <load-on-startup>1</load-on-startup>  
    </servlet>  
  
    <servlet-mapping>  
        <servlet-name>MessageBrokerServlet</servlet-name>  
        <url-pattern>/messagebroker/*</url-pattern>  
    </servlet-mapping>  
  
    <welcome-file-list>  
        <welcome-file>index.html</welcome-file>  
        <welcome-file>index.htm</welcome-file>  
    </welcome-file-list>  
    <context-param>  
        <param-name>contextConfigLocation</param-name>  
        <param-value>/WEB-INF/classes/applicationContext.xml</param-value>  
    </context-param>  
  
    <listener>  
        <listener-class>  
            org.springframework.web.context.ContextLoaderListener  
        </listener-class>  
    </listener>  
  
</web-app>  

[c-sharp]
view plaincopyprint?

<?xml version="1.0" encoding="UTF-8"?>  
<!DOCTYPE beans PUBLIC "-//SPRING//DTD BEAN//EN" "http://www.springframework.org/dtd/spring-beans.dtd">  
<beans>  
    <bean name="weatherBean" class="my.Test" />  
</beans>  

<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE beans PUBLIC "-//SPRING//DTD BEAN//EN" "http://www.springframework.org/dtd/spring-beans.dtd">
<beans>
<bean name="weatherBean" class="my.Test" />
</beans>


WEB-INF/flex/services-config.xml

不要改动,只加上下面段代码

 

[xhtml]
view plaincopyprint?

<factories>  
    <factory id="spring"  
        class="flex.samples.factories.SpringFactory" />  
</factories>  

WEB-INF/flex/remoting-config.xml

[b]不要改动,只加上下面段代码[/b]



[c-sharp]
view plaincopyprint?

<destination id="WeatherService">  
    <properties>  
        <factory>spring</factory>  
        <!--applicationContext.xml中bean的id-->  
        <source>weatherBean</source>  
    </properties>  
</destination>  

<destination id="WeatherService">
<properties>
<factory>spring</factory>
<!--applicationContext.xml中bean的id-->
<source>weatherBean</source>
</properties>
</destination>


Test.java



[java]
view plaincopyprint?

package my;  
  
import date.User;  
  
public class Test {  
    public User say(User u) {  
        u.setName("跑了一圈"+u.getName());  
        return u;  
    }  
}  

[java]
view plaincopyprint?

package date;  
  
public class User {  
    private String name;  
    public String getName() {  
        return name;  
    }  
    public void setName(String name) {  
        this.name = name;  
    }  
      
}  

package date;

public class User {
private String name;
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}

}


 关键到来了:把flex_spring.zip下的factory/src下的所有文件拷贝到你项目中编写Java代码的目录下

下载地址:

           
官方下载地址


           
csdn下载地址(无需下载点)


下面就是mxml文件类容

flex.mxml



[xhtml]
view plaincopyprint?

<?xml version="1.0" encoding="utf-8"?>  
<mx:Application xmlns:mx="http://www.adobe.com/2006/mxml"  
     layout="absolute" width="800" height="600" xmlns:date="date.*">  
<mx:Script>  
    <![CDATA[ 
        import mx.controls.Alert; 
        import mx.rpc.events.ResultEvent; 
        import date.FlexUser; 
        private function cik():void{ 
            var flexuser:FlexUser=new FlexUser(); 
             flexuser.name=username.text; 
            tesclass.say(flexuser); 
            tesclass.addEventListener(ResultEvent.RESULT,binglistener); 
        } 
        private function binglistener(e:ResultEvent):void{ 
            var userresult:FlexUser=(FlexUser)(e.result); 
            Alert.show(userresult.name); 
        } 
    ]]>  
</mx:Script>  
    <mx:RemoteObject id="tesclass" destination="WeatherService">  
    </mx:RemoteObject>  
    <mx:Button  label="测试" click=" cik()" x="461" y="364">  
    </mx:Button>  
    <mx:Label x="291" y="204" text="姓名" />  
    <mx:TextInput x="349" y="202" id="username" />  
</mx:Application>  

[xhtml]
view plaincopyprint?

package date  
{  
    [RemoteClass(alias="date.User")]  
    public class FlexUser  
    {  
        public function FlexUser()  
        {  
        }  
    public var name:String;  
    }  
}  

package date
{
[RemoteClass(alias="date.User")]
public class FlexUser
{
public function FlexUser()
{
}
public var name:String;
}
}


 到这里基本完成了。

所需要的包 spring主要包和spring-webmvc.jar,实在不行就把spring里所有的包给扔进去。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: