最近实习完回来,在校闲的蛋疼,看了公司用的flex技术,就去学习flex开发,everything begin with Hello world。所以,就查了好多资料,开始整合flex3和java交互。
首先,就是开发环境的搭建很蛋疼,差了很多flex3 plugins 安装到eclipse3.7中,最后,居然创建flex项目时,叫我输入注册码,我跳过去,eclipse就自动关闭,很郁闷,之前有输入过一次成功,当再次安装输入,就不行,而且,在创建一个flex项目,无缘报一个空白提示框错误,(如果你有解决办法,请大牛赐教!)[img]/images/smiles/icon_cry.gif" alt="[/img] 弄了好久,没搞定!
最后,直接安装一个flex3 builder,虽然只能用来开发,flex界面,不过至少,可以编写代码。
接下来,我就是把j2ee项目添加了flex3项目,达到flex与java交互的可能,以下就是步骤:
1.用eclipse创建一个web项目,名称为flexdemo;
2.解压blazeds.war 把里面的WEB-INF/lib 里的jar 添加到项目flexdemo里的WEB-INF/lib下;
把里面的flex文件夹直接放入flexdemo的web根目录下;
把里面的web.xml 内容加入到flexdemo下的web.xml;
3.在flexdemo里创建一个HelloWorld.java :
package com.cn; public class HelloWorld { public HelloWorld() { super(); // TODO Auto-generated constructor stub } public String getHelloWorld(String name) { return "Hello "+name; } }
并在flex下的一个remoting-config.xml 添加配置该类如下:
<?xml version="1.0" encoding="UTF-8"?> <service id="remoting-service" class="flex.messaging.services.RemotingService"> <adapters> <adapter-definition id="java-object" class="flex.messaging.services.remoting.adapters.JavaAdapter" default="true"/> </adapters> <default-channels> <channel ref="my-amf"/> </default-channels> <!-- 重要配置 --> <destination id="helloWorld"> <properties> <source>com.cn.HelloWorld</source> <scope>application</scope> </properties> </destination> <!-- 配置结束 --> </service>
4.在flex builder里创建一个flexjava的flexProject,由于贴图不行,创建过程在附件里。
5.在flexjava里的flexjava.mxml里代码:
<?xml version="1.0" encoding="utf-8"?> <mx:Application xmlns:mx="http://www.adobe.com/2006/mxml" layout="absolute"> <mx:Script> <![CDATA[ protected function btnClick(event:MouseEvent):void { var iname:String = tiName.text; say.getHelloWorld(iname); } ]]> </mx:Script> <mx:RemoteObject id="say" destination="helloWorld" endpoint="http://localhost:8080/flexdemo/messagebroker/amf"/> <mx:Panel x="190" y="67" width="394" height="228" title="Flex与Java交互实例"> <mx:Button x="265" y="13" label="提交" click="btnClick(event)" /> <mx:TextInput x="89" y="12.5" id="tiName" /> <mx:Label x="39" y="17.5" text="姓名:" /> <mx:Label text="{say.getHelloWorld.lastResult}" x="44" y="85" width="291" height="71" id="lbView" color="#5DD4F5" fontSize="20" fontWeight="bold" textDecoration="none" fontStyle="normal"/> </mx:Panel> </mx:Application>
6.启动tomcat,发布flexdemo会发现在项目下会生成一个flex项目的文件夹flex-java-debug,此时可以点击运行里面的flexjava.html。
第一次发表博客,分享下开始学习flex3的入门,以后做深入研究。