最近因为工作需要学习Flex,后台用的是java,他们之间的通信用的是BlazeDS,但是上网找了一下关于怎么配置BlezeDS,网上几乎都是复制粘贴,没有几个能讲的特明白的,对于像我这样的初学者根本就看的不太懂。所以搞通了之后,自己整理一下,图片也尽量贴全一些。
我用的环境是Myeclipse6.0+Flex4.0 +Tomcat5.5
首先创建一个Web项目
然后找到你下载的BlazeDS.Zip包,解压之后找到这几个文件
把这里面的flex文件夹直接复制粘贴到该项目的WEB-INF目录下,把lib里的类全部复制到该项目的lib里,然后把上图的web.xml替换掉该项目里的web.xml
全部整完之后,展开应该是这样
然后在客户端写个HelloWorld的类,
package com.lrz.test;
public class HelloWorld {
public String sayHello(){
return "helloworld";
}
}
写完之后,找到WEB-INF下的flex文件夹中的remoting-config.xml,在其中添加
<destination id="sayhello">
<properties>
<source>com.lrz.test.HelloWorld</source>
</properties>
</destination>
如图:
Myeclipse这边就先整这么多,然后把这个项目部署到tomcat中,启动tomcat,为的是能够在Flex端查找到该项目的部署位置。
接下来是Flex端了。
由于我使用的是Flex4.0,有些低版本的可能与我的图展示的不太一样,需要注意。
这里在 使用远程对象访问服务中选择BlezeDS。点击下一步:
这里根文件夹选择Myeclipse项目中刚才创建的那个J2EE项目在本地tomcat部署文件夹的位置,
根URL就是平时一般访问一个web项目的URL,就是刚才创建的那个J2EE项目访问的地址。
上下文根目录 写成 “/”加上你的J2EE项目名。
在mxml文件中,写上
<fx:Declarations>
<mx:RemoteObject destination="sayhello" id="hello">
<mx:method name="sayHello" result="handleExampleInfo(event)"/>
</mx:RemoteObject>
</fx:Declarations>
<fx:Script>
<![CDATA[
import mx.rpc.events.ResultEvent;
public function handleExampleInfo(event:ResultEvent):void{
var s:String = event.result as String;
label.text = s;
}
]]>
</fx:Script>
<mx:Button x="10" y="10" label="sayHelloWorld" click="hello.sayHello();"/>
<s:Label id="label" x="52" y="54" width="265" height="35"/>