记录如何使用blazeds框架实现Flex与java的通信:
1、下载blazeds.war包,很小的那个就可以了;
2、将war包放在Tomcat的webapp下,运行tomcat,这样war就会被解压出来;
3、在Myeclipse下建立自己的web项目,将解压后war包中blazeds\WEB-INF目录下的 lib、flex、web.xml统统copy到新建的web项目的WEB-INF下;
4、完成Myeclipse的新建后,接着在Flash Builder中新建FLEX项目;
其中,应用服务类型:java;选择使用远程对象访问服务BlazeDS;(注意)根文件夹要选择我们在Myeclipse中部署在tomcat的webapps的具体项目(我的是Java4Flex);然后修改根URL地址,上下文根目录;以防万一点击下“验证配置”,验证的时候记得要将Myeclipse的tomcat启动;这样基本配置就OK了;
6、接着开始实现通信的小demo
7、在flex中新建一个MXML应用程序,添加代码如下:
<fx:Declarations>
<s:RemoteObject id="obj" destination="product"/>
</fx:Declarations>
<s:Button id="button1" label="Submit" click="obj.getList()"/>
8、在Myeclipse中,在src的com.test包下新建一个Product.java;内容如下
package com.test;
public class Product {
//简单的输出
public void getList(){
System.out.println("aaaaaaaaaaaaaa");
}
}
9、在/Java4Flex/WebRoot/WEB-INF/flex/remoting-config.xml文件中需要配置与flex的通信,在该文件中新添加:
<destination id="product">
<properties>
<source>com.test.Product</source>
</properties>
</destination>
10、对以上代码的说明:上面两段代码中,分别用红色、绿色、蓝色标记了必须对应的程序代码;destination="product"指向FLEX与JAVA的通信,obj是FLEX内部的对象引用,getList()是指远程调用对象拥有的具体方法;
11、demo完成后,启动Tomcat,在用FLEX启动调试运行,点击页面的sumbit按钮,在Myeclipse的输出出现“aaaaaa”,那么成功了,若未出现,则说明配置还有问题;