转载

MyEclipse_8.5+flex_4 配置

小末丶g注:    此文是本人结合各家文章整理到一起滴,   原作者未知状态  哈哈,       

软件列表:(以我的为主)tomcat-6.0.32myeclipse-8.5.0-win32.exe、jdk- myeclipse自带(1.6版本)、blazeds-turnkey-4.0.0.14931.zip、FlashBuilder_4_Plugin_LS10.exe

  • 安装JDK(我的是用myeclipse的 不用安装,大家可以选择自己的安装目录):步骤略
  • 配置环境变量(用myeclipse 好像不用配置 嘿嘿):    如果不用Myeclipse的话就自己配置下吧,
  • tomcat  Myeclipse8.5  安装    我的是已经安装好的,所以不需要安装,如果未安装大家可以去官方下载,然后直接安装就可以了, tomcat如果非安装版本的直接copy到自己的硬盘上。
  • 部署tomcat 到Myeclipse8.5 中      正常配置tomcat 到Myeclipse中就可以了
  • 安装Adobe Flash Builder 4 Plugin安装时,它会让你选择一个解压的文件路径,这个路径中不可以含有中文,否则会出错,你就解压在C盘中。然后安装。这里是安装路径,这个路径不是整合Myeclipse路径所以不要选择Myeclipse运行路径。我这里安装到adobe文件夹下面,好点下一步。选择的路径是myeclise的运行目录(也就是有myeclipase.exe文件的目录),记得关键之处,如果这个不是选择运行文件夹那你的整合将失败。好了到此整合成功了。Flex4安装完成之后要将flex的安装目录中的eclipase目录下面的和eclipse-host-distro目录下面的features和plugins文件夹中的内容拷贝到安装Myeclipase文件夹下的common文件夹中的features和plugins文件夹内,到此配置成功 Blazds的配置:下载个Blazds的包,解压,将其中的blazeds.war解压,把里边的jar Copy 到工程lib 目录下.
  • 搭建一个web工程,flex只是做为表示层展示,flex只接收java返回数据,那怎么和java服务端通信呢?这时我们需要用到adobe公司开发的一个开源项目Blazeds。
  • 六.打开Myeclise8.5新建一个javaweb工程,选择javaEE 5.0如图2点击  finish  完成创建完成后在工程的 Webroot 上右键 import ->GeneralàFile system 点击Browser 选择blazeds     blazeds 需要下载的, 附件过大传不上来.有需要的联系我.QQ:32353590 我回头传到FTP上
  • 单击确定,然后勾选它点击finish   弹出 选择  Yes To All     导入成功.
  • 部署mytest项目到tomcat里面。这部重要因为下面要整合flex必须得启动服务。Tomcat物理路径webapps下的mytest
  • 将我们的javaweb工程转为flex 工程在工程名字上右键->添加/更改项目类型->添加Flex项目类型图:下一步.(千万别选错了自己的物理目录)完成后点击下"验证配置" 如果通过 则上方会提示 Web跟文件夹和URL有效,在项目工程右键preferences 配置Flex   src 。点击OK 就行了, 然后把 工程下  src  目录中的  Flex 文件Copy到刚建立的 flex_src 中
  • 新建java类,在src 目录下尽力包test里面建立个Accptch.java 内容如下:
  1. public class Accptch{
复制代码

与java 交互       配置 WebRoot/flex/remoting-config.xml


  1. <?xml version="1.0" encoding="UTF-8"?><service id="remoting-service"class="flex.messaging.services.RemotingService">
复制代码


这里的配置文件是加上去的


  1. <destination id="mytest"><properties><source>test.Accptech</source></properties></destination>
复制代码

这个是配置flex访问java方法的一个远程对象方法,配置后就可以与java通信了。我们试试吧下边是Flex  文件中的代码


  1. <?xml version="1.0" encoding="utf-8"?>
  2. <s:Application xmlns:fx="http://ns.adobe.com/mxml/2009"
  3.        xmlns:s="library://ns.adobe.com/flex/spark"
  4.        xmlns:mx="library://ns.adobe.com/flex/mx"  minWidth="1024" minHeight="768">
  5. <fx:Script>
  6.   <![CDATA[
  7.    import mx.controls.Alert;
  8.    import mx.rpc.events.FaultEvent;
  9.    import mx.rpc.events.ResultEvent;
  10.    protected function myFlex_resultHandler(event:ResultEvent):void
  11.    {
  12.     var name:String=event.result as String;
  13.     Alert.show(name);
  14.    }

  15.    protected function btnSend_clickHandler(event:MouseEvent):void
  16.    {
  17.     myFlex.helloWorld(txtName.text);
  18.    }
  19.   ]]>
  20. </fx:Script>
  21. <fx:Declarations>
  22.   <!-- Place non-visual elements (e.g., services, value objects) here -->
  23.   <s:RemoteObject id="myFlex" destination="mytest" result="myFlex_resultHandler(event)"  />
  24. </fx:Declarations>
  25. <s:Panel x="87" y="20" width="250" height="200" title="www.accptecg.comflex4">
  26.   <s:TextInput x="16" y="37" id="txtName"/>
  27.   <s:Button x="168" y="38" label="发送" id="btnSend" click="btnSend_clickHandler(event)"/>
  28. </s:Panel>

  29. </s:Application>
复制代码

下面的这个配置就是调用java端的一个远程对象, destination="mytest"就是我们刚才配置的remoting-config.xml文件中的ID名称,result="myFlex_resultHandler(event)" 就是如果服务器成功就执行result里面的方法。

  1. <fx:Declarations>
  2.   <!-- Place non-visual elements (e.g., services, value objects) here -->
  3.   <s:RemoteObject id="myFlex" destination="mytest" result="myFlex_resultHandler(event)" />
  4. </fx:Declarations>
复制代码

然后点发送按钮时发送远程对象的helloWorld方法,执行click="btnSend_clickHandler(event)"配置成功后重启服务,访问下吧,看看你成功没?

正文到此结束
Loading...