当前位置:首页 > 开发 > Web前端 > 前端 > 正文

用一个HelloWorl例子手把手教会你使用BlazeDS

发表于: 2009-11-05   作者:coral0212   来源:转载   浏览次数:
摘要: 发表于: 2009-10-26 23:00:13 - IP:59.46.*.* 只看楼主 大 中 小 楼主 用一个HelloWorl例子手把手教会你使用BlazeDS 什么是BlazeDS呢?BlazeDS是一个基于服务器的Java远程调用(remoting)和Web消息传递(messaging)技术,它能够使得后台的Java应用程序和运行在浏览器上的Flex应用程序相互通信。在各大

发表于: 2009-10-26 23:00:13 - IP:59.46.*.*

只看楼主 大 中 小 楼主

用一个HelloWorl例子手把手教会你使用BlazeDS
什么是BlazeDS呢?BlazeDS是一个基于服务器的Java远程调用(remoting)和Web消息传递(messaging)技术,它能够使得后台的Java应用程序和运行在浏览器上的Flex应用程序相互通信。在各大搜索引擎里,关于BlazeDS的中文教程来来去去都是那几篇,而且都是使用Eclipse来开发Flex的(用Eclipse开发Flex跟Java很不错的)。这篇文章将会尝试着使用Flex Builder 3,用一个经典的“HelloWorld”例子来让你学会BlazeDS的使用方法。
       在开始之前,你需要安装JDK和Tomcat并实现成功配置,详细请看:Tomcat 6.0 配置。
一、我电脑上的配置是如下四点,如果你电脑上的配置不同于以下四点,可能需要你对你的电脑进行修改一下:
       1、Window XP;
       2、Tomcat 6.0,安装在“C:\Program Files\Apache Software Foundation\Tomcat 6.0\”,下文会使用“[tomcat-home]”来代替这长长的目录路径;
       3、Tomcat服务器使用端口8080;
       4、使用Flex Builder 3而非Eclipse。

二、如果你对以下操作比较陌生,那你应该先熟悉一下以下操作:
       1、写一个Java文件并编译它;
       2、使用Flex Builder 3;
       3、停止和开户Tomcat服务器。三、下载BlazeDS:
       1、网址:http://opensource.adobe.com/wiki/display/blazeds/Release+Builds ;
       2、下载那个“BlazeDS binary distribution”(http://download.macromedia.com/pub/opensource/blazeds/blazeds_bin_3-0-0-544.zip);
               i. 把那个 .zip 文件保存到你的电脑上
               ii. 里面有两个文件:blazeds.war 和 blazeds-bin-readme.html
               iii. 把里面的 blazeds.war 文件解压到这个目录下:[tomcat-home]\webapps
       3、如果Tomcat正在运行,请停止它然后再启动它(就是重启Tomcat);
       4、打开这个目录:[tomcat-home]\webapps
               i. 你应该会看到一个名为“blaseds”的文件夹
               ii. 在blaseds文件夹里,会有一个名为“WEB-INF”的文件夹
               iii. 在WEB-INF文件夹里会有很多文件夹,其中有一个名为“classes”的文件夹。Flex应用程序需要使用到的Java class就是放到这个文件夹里的
               iv. 还有一个名为“flex”的文件夹,它里面有一个remoting-config.xml,我们要在这个remoting-config.xml文件里添加destination结点来告诉Flex应用程序如何连接上Java class的

四、使用文本编辑器编写以下这个Java文件并命名为“HelloWorld.java”:

   1. package cn.riahome.java;
   2.

   3. public class HelloWorld {
   4.

   5. public HelloWorld() {
   6. }
   7.

   8. public String getHelloWorld() {
   9.  return "Hello World!";
  10. }
  11. }
      编译这个Java文件并得到HelloWorld.class文件。在 [tomcat-home]\webapps\blazeds\WEB-INF\classes 目录下新建一个名为“cn”的文件夹,然后在cn文件夹新建一个“riahome”文件夹,接着在riahome文件夹里新建一个“java”文件夹,最后把刚才编译得到的HelloWorld.class文件放到java文件里,HelloWorld.class的路径应该为:[tomcat- home]\webapps\blazeds\WEB-INF\classes\cn\riahome\java\HelloWorld.class

      五、打开 [tomcat-home]\ webapps\blazeds\WEB-INF\flex\remoting-config.xml 这个文件,然后在</default-channels>标签之后和</service>标签之前添加以下结点(注意id属性和 source结点的值,source结点描述了完整的包路径和类名):
         1. <destination id="helloWorld">
         2.    <properties>
         3.        <source>cn.riahome.java.HelloWorld</source>
         4.    </properties>
         5. </destination>

      六、如果Tomcat正在运行,请停止它然后再启动它(就是重启Tomcat);

      七、请按以下步骤新建一个名为“HelloWorld”的Flex Project:






八、在 HelloWorld.mxml 文件的<mx:Application></mx:Application>标签之间添加如下代码:

   1. <mx:Script>
   2.        <![CDATA[
   3.           
   4.            import mx.rpc.events.FaultEvent;
   5.            import mx.controls.Alert;
   6.            import mx.rpc.events.ResultEvent;
   7.           
   8.            private function resultHandler(event:ResultEvent):void
   9.            {
  10.                // 显示收到的 "Hello World!" 数据
  11.                Alert.show(event.result.toString(), "提示");
  12.            }
  13.           
  14.            private function faultHandler(event:FaultEvent):void
  15.            {
  16.                Alert.show(event.fault.toString(), "提示");
  17.            }
  18.           
  19.        ]]>
  20.    </mx:Script>
  21.   
  22.    <mx:RemoteObject id="remoteObject" destination="helloWorld" source="cn.riahome.java.HelloWorld"
  23.        result="resultHandler(event)" fault="faultHandler(event)"/>
  24.   
  25.    <mx:Button label="发送" click="remoteObject.getHelloWorld()"/>


九、按F11测试,你看到一个叫“发送”的按钮,按一下它,会弹出“Hello World!”,这是后台发送过来的。至此,我得恭喜您!您成功了!

十、最后需要注意的是:<mx:RemoteObject>标签的destination属性值必须跟remoting-config.xml文件里destination标签的id值一致!

如果您还是测试不成功,请注意以下几点:
1、核实HelloWorld.class文件已经在[tomcat-home]\webapps\blazeds\WEB-INF\classes\cn\riahome\java目录下;
2、检查remote-config.xml文件里是否已经添加了上述的<destination>标签;
3、有没有重启Tomcat服务器;
4、检查<mx:RemoteObject>标签有没有这两个属性:destination=”helloWorld”、source=”cn.riahome.java.HelloWorld”
5、打开Flex Project的属性面板,查看 Flex Compiler 里的Additional compiler arguments选项,是否已经有“-services”指令,如下图(通常在新建Project的时候就自动添加的)


6、打开Flex Project的属性面板,再次检查 Flex Server 里的 Root folder、Root URL、Conntext root,按一下 Validate Location 按钮测试是否成功
7、检查所有代码有没有错误

用一个HelloWorl例子手把手教会你使用BlazeDS

  • 0

    开心

    开心

  • 0

    板砖

    板砖

  • 0

    感动

    感动

  • 0

    有用

    有用

  • 0

    疑问

    疑问

  • 0

    难过

    难过

  • 0

    无聊

    无聊

  • 0

    震惊

    震惊

编辑推荐
什么是BlazeDS呢?BlazeDS是一个基于服务器的Java远程调用(remoting)和Web消息传递(messaging)
这里提供一个java 代码例子并结合jps 和jstack来对java 基本线程api一探究竟。这里提供的代码(附在
知识普及:什么是维基百科?简单说,就是很多人,来自世界各地的人在网站上发布知识,参与者可以自
要从零开始,五分钟做完一个基于SPARK的PM2.5分析项目,你是不是会问 1. PM2.5的数据在哪里? 2. SP
从2006年开始在Csdn上开通了博客后,陆续将自己的工作过程中技术难点和经历感悟发在上面,以便分享
本文转载:http://www.cnblogs.com/xiurui12345/archive/2012/05/16/2503868.html Windows Service
构造一个SpringMVC项目的基本步骤是: 基本步骤: 1. 加入jar包 2. 在web.xml中配置DispatcherServl
原文出处: 涂根华的博客 欢迎分享原创到伯乐头条 一:Git是什么? Git是目前世界上最先进的分布式
一:Git是什么? Git是目前世界上最先进的分布式版本控制系统。 二:SVN与Git的最主要的区别? SVN
一:Git是什么? Git是目前世界上最先进的分布式版本控制系统。 二:SVN与Git的最主要的区别? SVN
版权所有 IT知识库 CopyRight © 2009-2015 IT知识库 IT610.com , All Rights Reserved. 京ICP备09083238号