Blazdes 和flash builder 配置实例
纠结了一天的事件 查找了好多的资料。终于把这个任务完成了。
jdk 和tomcat 都需要配置。
.;%Java_Home%\lib;%CATALINA_HOME%/common/lib; --Classpath
D:\tomcat6 --CATALINA_HOME
D:\Program Files\Java\jdk1.6.0_01 --Java_Home
%Java_Home%\bin;%CATALINA_HOME%/bin; --Path
配置基本就这些。
cmd_javac 检测jdk是否配置成功。
http://localhost:8080 检测tomcat是否配置成功。
MyEclipse 8.5 新建一web工程。不要把web工程建立在tomcat下面的webapps下面否则会报错。把下载的blazdes加压后的
三个文件拷到WebRoot下面覆盖即可。
新建一个class 包随便:
package pac;
public class HelloWorld {
public String getHello()
{
return "Hello";
}
public String helloJavaFlex(String name) {
return "hello," + name + "您可以使用java和flex通信了";
}
}
修改remoting-config.xml 添加
<destination id="IDhello">
<properties>
<source>pac.HelloWorld</source>
</properties>
</destination>
<properties>
<source>pac.HelloWorld</source>
</properties>
</destination>
另外web.xml下面的
<servlet>
<servlet-name>RDSDispatchServlet</servlet-name>
<display-name>RDSDispatchServlet</display-name>
<servlet-class>flex.rds.server.servlet.FrontEndServlet</servlet-class>
<init-param>
<param-name>useAppserverSecurity</param-name>
<param-value>false</param-value>
</init-param>
<load-on-startup>10</load-on-startup>
</servlet> 取消禁用并设置value为false.
<servlet-name>RDSDispatchServlet</servlet-name>
<display-name>RDSDispatchServlet</display-name>
<servlet-class>flex.rds.server.servlet.FrontEndServlet</servlet-class>
<init-param>
<param-name>useAppserverSecurity</param-name>
<param-value>false</param-value>
</init-param>
<load-on-startup>10</load-on-startup>
</servlet> 取消禁用并设置value为false.
新建flash builder工程。设置j2se服务端
进行配置:

然后一路走下去。选择完成。最后点击数据-服务位置 点击选择即可。

<?xml version="1.0" encoding="utf-8"?>
<s:Application xmlns:fx="http://ns.adobe.com/mxml/2009"
xmlns:s="library://ns.adobe.com/flex/spark"
xmlns:mx="library://ns.adobe.com/flex/mx" minWidth="955" minHeight="600" xmlns:services="services.*">
<fx:Script>
<![CDATA[
import mx.rpc.events.ResultEvent;
protected function button1_clickHandler(event:MouseEvent):void
{
ro.helloJavaFlex("--");
ro.getHello();
ro.addEventListener(ResultEvent.RESULT,ResaultH);
}
private function ResaultH(event:ResultEvent):void
{
trace(event.result.toString()+"---");
}
]]>
</fx:Script>
<fx:Declarations>
<!-- 将非可视元素(例如服务、值对象)放在此处 -->
<s:RemoteObject id="ro" destination="IDhello" endpoint="http://localhost:8080/Blazdes_Demo/messagebroker/amf"/>
</fx:Declarations>
<s:Button x="286" y="169" label="按钮" click="button1_clickHandler(event)"/>
</s:Application>
endpoint是该值为[http://+主机地址:端口/blazeds在webapps中的那个文件夹的名字/ messagebroker/amf],后面的/messagebroker/amf是固定的。可设置可不设置。
如果在类里面动态的进行通信的话为:
package m
{
import mx.controls.Alert;
import mx.rpc.AsyncResponder;
import mx.rpc.AsyncToken;
import mx.rpc.events.FaultEvent;
import mx.rpc.events.ResultEvent;
import mx.rpc.remoting.RemoteObject;
public class ClientInfo
{
public var remote:RemoteObject;
public static var PlayerClient:ClientInfo;
public var PlayerObj:Object;
public var teamObj:Object;
public function ClientInfo()
{
}
public static function getInstance():ClientInfo
{
if(PlayerClient==null)
{
PlayerClient=new ClientInfo();
}
return PlayerClient;
}
public function StartClient():void
{
if(remote==null)
{
remote=new RemoteObject();
}
remote.endpoint="http://192.168.10.92/logservice/messagebroker/amf";
}
public function getPlayerInfo():void
{
remote.destination="userService";
Alert.show("btn1");
var result:AsyncToken =remote.getByUserId(72);
result.addResponder(new AsyncResponder(playerInfoResultHandler,RemoteFault));
}
public function getPlayerInt():void
{
remote.destination="teamService";
var result:AsyncToken =remote.getTeam(72);
result.addResponder(new AsyncResponder(playerIntResultHandler,RemoteFault));
}
private function playerInfoResultHandler(event:ResultEvent,token:Object):void
{
trace("个人信息加载成功"+event.result.toString());
Alert.show("btn11");
PlayerClient.PlayerObj=event.result;
}
private function playerIntResultHandler(event:ResultEvent,token:Object):void
{
trace("球队信息加载成功"+event.result.toString());
Alert.show("btn22");
PlayerClient.teamObj=event.result;
}
private function RemoteFault(event:FaultEvent,token:Object):void
{
Alert.show(event.fault.toString());
}
}
}
服务端进行相应的服务目标配置。

浙公网安备 33010602011771号