天天看點

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模闆)

繼續閱讀