flex与Java通过BlazeDS实现通信

1、在myecplise中新建一个web project项目,如:flexjava

2、部署flexjava到tomcat服务器中,并启动tomcat

3、为flexjava项目添加blazeDS支持:

     1)、解压BlazeDS.war到任意文件夹,里面有WEB-INF和META-INF两个文件夹

     2)、复制WEB-INF文件夹,覆盖flexjava中WebRoot下的WEB-INF(目的是为了得到其子文件夹flex中的配置文件和lib中的资源包,以及web.xml的内容)

4、为项目添加Flex的支持,右键项目名称,点击“添加/更改项目类型”-->“添加Flex项目类型”

5、代码的新建和编写

    1)、在flexjava/src目录下面新建一个类,如:HelloWorld

       package com.test;

       public class HelloWorld{

                public HelloWorld(){}

                public String sayHelloWorld(String name){

                         return "Hello First Demo"+name;

                }

       }

    2)、编辑flexjava.mxml

  <?xml version="1.0" encoding="utf-8"?>

<s:Application xmls: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">

     <fx:Script>

           <![CDATA[

                   import mx.controls.Alert;

                   import mx.rpc.events.ResultEvent;

              

                   protected function myFlex_resultHandler(event:ResultEvent):void{

                          var name:String=event.result as String;

                          Alert.show(name);

                   }

                   protected function button1_clickHandler(event:MouseEvent):void{

                          myFlex.sayHelloWorld(txtName.text);

                   }

           ]]>

     </fx:Script>


     <fx:Declarations>

             <!--  将非可视元素(例如服务、值对象)放在此处 -->

             <s:RemoteObject id="myFlex" destination="mytest" result="myFlex_resultHandler(event)"/>

     </fx:Declarations>

     <s:Button x="209" y="135" label="按钮" click="button1_clickHandler(event)"/>

     <s:TextInput x="166" y="81" id="txtName" />

     <s:Label x="10" y="81" id="txtName" />

     <s:Label x="10" y="81" text="请输入内容:" fontSize="15" fontWeight="bold" fontFamily="微软雅黑" />

</s:Application>

     3)、编辑WEB-INF/flex/remoting-config.xml文件:(其实就是增加了destination)

     <destination id="mytest">

            <properties>

                    <source>com.test.HelloWorld</source>

            </properties>

     </destination>

6、右键项目名称,点击properties/flex构建路径,修改输出文件夹URL;

7、至此,配置基本完毕。重启tomcat,运行flexjava.mxml即可。

另:如果运行时报404错误,解决办法:

     右键项目名--点击进入属性--flex编译器--HTML包装器--打勾

     (如果已经打勾了,先取消掉应用,然后重新打勾生成Html模板)

你可能感兴趣的:(flex学习)