MyEclipse+Flex+Blzeds入門淺談
關(guān)于使用MyEclips的Flex Builder插件,開發(fā)Flex應(yīng)用程序的文章,大多數(shù)介紹的都不是很詳細(xì),在開發(fā)配置過程中出現(xiàn)了許多錯(cuò)誤,將我遇到的問題做一下總結(jié)。
MyEclipse+Flex+Blzeds入門1.開發(fā)環(huán)境的搭建
我使用的是MyEclipse6.5 + Tomcat5.5 + Blazeds + Flex Builder Eclips Plug-in 具體下載地址,可以去官方下載,首先在安裝FLex Builder時(shí)出現(xiàn)問題,當(dāng)時(shí)下載的是Flex Builder Beta2版本,這個(gè)版本在安裝到***的時(shí)候,出現(xiàn)問題,安裝進(jìn)度無法完成,***使用前一個(gè)版本,安裝成功,如果還不成功,查看是否是殺毒軟件影響。到此Flex開發(fā)環(huán)境搭建完畢。
MyEclipse+Flex+Blzeds入門2.Blazeds 與 Lcds 的區(qū)別
LCDS(LiveCycle Data Service)之前叫做FDS(Flex Data Service),他是基于java(也有ColdFusion版的)后端的數(shù)據(jù)服務(wù)工程,功能包括映射Java對(duì)象到Flex對(duì)象(包括調(diào)用Java類 的方法)、RTMP(Real Time Message Protocol)、代理、服務(wù)端生成PDF等等功能,詳細(xì)請(qǐng)參考LCDS里的說明。在官方網(wǎng)站注冊之后就可以免費(fèi)下載。
LCDS實(shí)際是付費(fèi)的,但是免費(fèi)也能使用,似乎是少了多CPU的支持。當(dāng)然還有一些其他的數(shù)據(jù)服務(wù),比如AMFPHP之類的。
當(dāng)然,LCDS提供的功能我們都能自己實(shí)現(xiàn),并非Flex脫離了LCDS就不能和后臺(tái)打交道了,除了RemoteObject還有WebSerivce、HTTPService等等。只是說,LCDS提供了更多的方便和特性。
BlazeDS可以看成是LCDS的簡化版,它少了后者的Data Management Service高級(jí)功能,目前不支持RTMP(Real Time Message Protocol)協(xié)議。
MyEclipse+Flex+Blzeds入門3.開始進(jìn)入正題。
1)新建Flex工程,F(xiàn)ile -> new -> Flex Project … 進(jìn)入向?qū)Ы缑?。其中java source folder是用來存放Java源碼存放的根目錄,目錄名可以自己定義。
點(diǎn)擊下一步,
Content folder實(shí)際上就是最終編譯后的容器目錄,因此,blazeds.war文件將會(huì)發(fā)布到該目錄下的WEB-INF下的flex目錄中。同時(shí)因?yàn)榻坛滩捎玫氖荕yEclipse,他默認(rèn)的就是發(fā)布WebContent里的內(nèi)容,為了自動(dòng)化,因此這里改為了WebContent。
Output folder 指的是Flex編譯后的swf和html等文件存放的路徑,這里改為了WebContent\bin
點(diǎn)擊下一步,
Main source folder 是flex的源碼存放根目錄,當(dāng)然和java源碼分開了。
Output folder URL 是在開發(fā)過程中運(yùn)行和調(diào)試的請(qǐng)求路徑,這個(gè)與發(fā)布無關(guān),不會(huì)影響任何你在程序中使用的路徑,但是能使開發(fā)方便。注意:FlexBuilder3這里存在bug,新建工程時(shí),部分自定義的屬性并沒有保存下來,而必須在新建后的項(xiàng)目屬性中更改,后面有說明。
點(diǎn)擊Fanish結(jié)束。
2)給工程加入Web project capabilities。
將web root directory 改為 WebContent。create web.xml前的對(duì)勾取消。
3)修改工程屬性,右鍵點(diǎn)擊工程,打開屬性對(duì)話框。
修改flex build path->out folder url + "/bin"
修改flex server->context root(/Flex工程名),這一步很重要。(注意:如果你分開為兩個(gè)工程,則這里指的是你J2ee項(xiàng)目的名稱,而不是你Flex項(xiàng)目的名稱,因?yàn)槟阍谡?qǐng)求Java的數(shù)據(jù)服務(wù)),在Flex請(qǐng)求LCDS時(shí),會(huì)采用這個(gè)作為參數(shù)
http://{server.name}:{server.port}/{context.root}/messagebroker/amf
如果Context root錯(cuò)了,那么永遠(yuǎn)不可能正確的請(qǐng)求LCDS的服務(wù)了。
4)部署應(yīng)用,啟動(dòng)服務(wù)。
MyEclipse+Flex+Blzeds入門的一些簡單情況就介紹到這里,希望對(duì)于你了解MyEclipse+Flex+Blzeds有所幫助。
【編輯推薦】