最近实习完回来,在校闲的蛋疼,看了公司用的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的入门,以后做深入研究。