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

    相冊

    技術友情博客

    搜索

    最新評論

    閱讀排行榜

    評論排行榜

    主站蜘蛛池模板: 国内精品99亚洲免费高清| 亚洲欧洲日韩国产| 亚洲精品~无码抽插| 亚洲av无码一区二区三区观看| 日韩国产精品亚洲а∨天堂免| 中文字幕乱码免费看电影| 成人爽A毛片免费看| 亚洲爆乳无码一区二区三区| 美女扒开尿口给男人爽免费视频 | 九九久久精品国产免费看小说| 最近中文字幕免费完整| 亚洲中文字幕伊人久久无码| 亚洲一区二区三区写真| 9420免费高清在线视频| 亚洲激情电影在线| 一级毛片免费观看不卡视频| 亚洲性在线看高清h片| 波多野结衣免费一区视频 | 国产精品免费视频一区| 亚洲午夜精品一区二区公牛电影院 | 久久久精品国产亚洲成人满18免费网站 | 成全视频在线观看免费| 亚洲视频免费在线看| 97在线免费视频| 亚洲精品无码不卡| 中文字幕一区二区免费| 亚洲天堂在线播放| 好吊妞998视频免费观看在线| 亚洲国产精品人久久电影| 日韩成人在线免费视频 | 国产精品美女久久久免费 | 8090在线观看免费观看| 亚洲一区AV无码少妇电影| 亚洲国产香蕉人人爽成AV片久久| 亚洲色偷偷偷综合网| 国产亚洲精品高清在线| 黄 色一级 成 人网站免费| 少妇中文字幕乱码亚洲影视| 日本xxxx色视频在线观看免费| 国产V亚洲V天堂无码| 毛片视频免费观看|