浏览 10541 次
锁定老帖子 主题:flex+java入门
精华帖 (0) :: 良好帖 (0) :: 新手帖 (2) :: 隐藏帖 (0)
|
|
---|---|
作者 | 正文 |
发表时间:2010-08-12
最后修改:2011-06-14
Flex与java交互有三种方法,我较为习惯先建web项目再加入flex。我的开发环境是MyEclipse6.0.1(含Flex插件)+Tomcat+Blazeds+joto(这里只是用来测试,感觉这个有点过时了,可以使用LCDS)。Blazeds与joto以及相关截图在附件中,需要的可以下载。 具体操作: 1.先将joto中lib目录下的jar文件拷到tomcat的common/lib目录下,再将blazeds.war放到tomcat的webapps目录中,运行服务器,会生成blazeds目录,里面有两个文件夹META-INF和WEB-INF。 2.在MyEclipse中新建一个web项目FlexDemo,直接用toncat中blazeds中的META-INF和WEB-INF文件夹覆盖WebRoot下的两个文件夹,此时项目的结构如下图: ![]() 3.在src目录下新建一个java类用于测试 ![]() ![]() 4.部署FlexDemo,启动Tomcat服务器 5.右击FlexDemo程序,选择Flex Project Nature-->Add Flex Project Nature出现如下界面: ![]() 注意:Application server type:选择J2EE 6.点击Next: ![]() 注意:Root folder :选择FlexDemo程序在你的Tomcat服务器下的位置 Root URL :FlexDemo的URL,我的Tomcat的端口号是9999 Context root :一定要是“/web项目名称”,即/FlexDemo Output folder :flex文件的位置 7.点击Finish :项目结构变为如下所示: ![]() 会项目名称上会出现一个红色的“x”,是由于未能成功创建html-tamplates文件夹,该文件夹存放flex生成的html等文件,解决方法是:Window-->Show View-->Problems: ![]() 右击“Cannot create HTML wrapper”Recreate HTML Temapltes,会发现红色”x”消失。 注意:如果此时仍然有红色“x”,如下图: ![]() 解决方法是:右击FlexDemoPropertiesFlex Compiler,选择Flex SDK Version为第一个,如下图: ![]() 选择第一个即可 8.打开WEB-INF/flex/remoting-config.xml文件,加入 ![]() 注意source是上面创建的HelloWorld类的完整路径 9.编辑FlexDemo.mxml: <?xml version="1.0" encoding="utf-8"?> <mx:Application xmlns:mx="http://www.adobe.com/2006/mxml" layout="absolute" creationComplete="init()"> <mx:Script> <![CDATA[ import mx.controls.Alert; import mx.rpc.events.ResultEvent; import mx.rpc.remoting.mxml.RemoteObject; private var remote:RemoteObject = new RemoteObject(); public function init():void{ remote.destination="test"; remote.sayHello.addEventListener(ResultEvent.RESULT,doHelloWorld); } public function doHelloWorld(event:ResultEvent):void{ resultTxt.text = event.result.toString(); } public function testFlex():void{ remote.sayHello(txtSay.text); } ]]> </mx:Script> <mx:Button x="10" y="10" label="测试" click="testFlex()" fontSize="16"/> <mx:TextInput x="84" y="10" width="266" id="txtSay" fontSize="16"/> <mx:Label id="resultTxt" x="412" y="12" fontSize="16"/> </mx:Application> init 方法中的remote.destination="test";其中“test”是WEB-INF/flex/remoting-config.xml文件中加入的destination的id, remote.sayHello.addEventListener(ResultEvent.RESULT,doHelloWorld);sayHello对应java类中中的sayHello方法。 同样testFlex方法中的remote.sayHello(txtSay.text);中的sayHello也对应java类中的sayHello方法。 10.重新部署,重启服务器,浏览器输入http://localhost:9999/FlexDemo/flexs/FlexDemo.html 测试成功 ![]() 声明:ITeye文章版权属于作者,受法律保护。没有作者书面许可不得转载。
推荐链接
|
|
返回顶楼 | |
发表时间:2010-08-15
嗯,网上有pdf的资料。
|
|
返回顶楼 | |
发表时间:2010-08-16
很久不弄了。要是Blazeds+flex+ssh还行。
那块的配置文件很麻烦 |
|
返回顶楼 | |
发表时间:2010-08-18
我2个月之前也搞了一下,哈哈,可以把数据库的数据显示在FLEX的表格里,还弄了什么Flashmovie好象是这个吧捕捉摄像头的。
|
|
返回顶楼 | |
发表时间:2010-08-21
请问 提示
仅支持 LiveCycle Data Services 2.6 和更高版本 是什么问题 怎么解决 |
|
返回顶楼 | |