<rt id="bn8ez"></rt>
<label id="bn8ez"></label>

  • <span id="bn8ez"></span>

    <label id="bn8ez"><meter id="bn8ez"></meter></label>

    Java海闊天空

    編程是我的生活,但生活不僅僅是編程。

    RemoteObject與Java類通訊

    今天摸索了一下Flex3中使用RemoteObject和Java類的通訊問題,感覺非常方便,雖然使用HttpService也可以,但多了一個控制器,并且還要對數據進行處理;而使用RemoteObject,則可能直接訪問類方法。

    要注意的是在編譯Java文件時,不能使用JDK1.5以上的版本,開始我用的是JDK1.6,Tomcat容器啟動的時候,提示版本異常,后來改成Jdk1.5,錯誤才得以消除。

    雖然程序運行成功,但我一直沒找到將Web Project與Flex Project整合的好方法,Eclipse插件在我這里似乎有問題,所以,我是先使用命令編譯好類,然后放到Flex工程中去的。記得安裝LCDS服務器,管方網站有下載,并提供了序列號。

    廢話少說,看步驟:

    第一步:為了測試Flex對復雜類型List的支持,所以我寫了一個方法用于返回元素類型為Student的List。先看Student類代碼:
    package com.aptech.flex;

    public class Student

    {

    private int sid;

    private String sname;

    public Student(int sid, String sname){

    this.sid = sid;

    this.sname = sname;

    }

    public Student(){

    }

    public int getSid(){

    return this.sid;

    }

    public String getSname(){

    return this.sname;

    }

    public void setSid(int sid){

    this.sid = sid;

    }

    public void setSname(String sname){

    this.sname = sname;

    }

    }

    第二步:創建示意性的業務方法,返回List<Student>集合,習慣使用泛型,如果不用泛型應該也能處理。
    package com.aptech.flex;

    import java.util.*;

    public class HelloWorld

    {

    public String sayHello(String str){

    return str + "你好";

    }

    public List<Student> strList(){

    List<Student> list = new ArrayList<Student>();

    list.add(new Student(1, "張三"));

    list.add(new Student(2, "李四"));

    list.add(new Student(3, "王八"));

    return list;

    }

    }

    第三步:修改<Tomcat>/lcds/flex/remoting-config.xml配置文件,添加如下語句:

    <destination id = "hw">

    <properties>

    <source>com.aptech.flex.HelloWorld</source>

    <scope>application</scope>

    </properties>

    </destination>

    在該文件中,貌似不能寫中文注釋,啟動容器時出現異常。

    第四步:創建Flex工程,定義<mx:RemoteObject />,內容如下:

    <mx:RemoteObject id="hwro" destination="hw"></mx:RemoteObject>

    這里的destination必須和第三步的<destination id = "hw">一致。

    第五步:定義一個按鈕,并觸發單擊事件。

    <mx:Button x="123" y="154" label="訪問JAVA類" click="doJava(event)"/>

    doJava事件定義如下:

    internal function doJava(event: Event): void{

    //hwro.sayHello("李贊紅");

    hwro.strList();

    hwro.addEventListener(ResultEvent.RESULT, onCallback);

    }

    以下是結果處理方法:

    private function onCallback(event: ResultEvent): void{

    var ac: ArrayCollection = event.result as ArrayCollection;

    var arr: Array = ac.toArray();

    var str: String = "";

    for(var a in arr){

    str += arr[a].sid + "," + arr[a].sname + ""n";

    }

    Alert.show(str);

    }

    Flex將Java類的List自動轉換成了ArrayCollection類型,該示例中List元素類型為Student,則可以使用E.屬性來訪問。

    posted on 2008-08-20 11:34 李贊紅 閱讀(6962) 評論(4)  編輯  收藏

    評論

    # re: RemoteObject與Java類通訊 2008-08-20 18:00 枯寬

    新工作第一天上班,也要整flex,看了一天的Flex,門外漢,呵呵  回復  更多評論   

    # re: RemoteObject與Java類通訊 2008-08-25 09:25 單飛

    RemoteObject是要收費的吧?不如自己調用HttpRequest發送請求和傳送對象.  回復  更多評論   

    # re: RemoteObject與Java類通訊[未登錄] 2009-07-20 16:50 Mars

    彼此,我也一樣啊!哈哈  回復  更多評論   

    # re: RemoteObject與Java類通訊[未登錄] 2011-04-28 10:29

    受教了,謝謝  回復  更多評論   


    只有注冊用戶登錄后才能發表評論。


    網站導航:
     

    導航

    <2008年8月>
    272829303112
    3456789
    10111213141516
    17181920212223
    24252627282930
    31123456

    統計

    常用鏈接

    留言簿(12)

    隨筆檔案(28)

    相冊

    技術友情博客

    搜索

    最新評論

    閱讀排行榜

    評論排行榜

    主站蜘蛛池模板: 好吊妞在线成人免费| 四虎影视在线影院在线观看免费视频| 亚洲一级毛片免费看| 亚洲成色在线综合网站| 黄色视频在线免费观看| 国产亚洲精aa成人网站| eeuss草民免费| 亚洲人成网7777777国产| 久久国产美女免费观看精品| 国产AV无码专区亚洲AV手机麻豆| 麻豆安全免费网址入口| 亚洲成AⅤ人影院在线观看| 日亚毛片免费乱码不卡一区| 亚洲毛片av日韩av无码| 高清永久免费观看| 亚洲av最新在线网址| 国产va在线观看免费| 亚洲麻豆精品果冻传媒| 免费无码A片一区二三区| 亚洲第一综合天堂另类专| 国产在线观看免费视频播放器| 亚洲国产精品成人综合色在线| 手机看片久久国产免费| 日韩一级片免费观看| 亚洲最大激情中文字幕| 久久久久免费看黄a级试看| 亚洲国产精品人久久电影| 日韩视频在线免费观看| 国产高清对白在线观看免费91| 久久精品国产精品亚洲精品| 毛片免费全部播放无码| 相泽南亚洲一区二区在线播放| 久久激情亚洲精品无码?V| 久久国产精品免费网站| 伊人久久亚洲综合影院首页| 亚洲精品第一国产综合境外资源| 国内少妇偷人精品视频免费| 亚洲国产系列一区二区三区| 亚洲成AV人在线观看网址| 久久久久久AV无码免费网站下载| 亚洲av一本岛在线播放|