Flex与java通过BlazeDS实现通信(简单Demo)

标签: flex java blazeds | 发表时间:2012-10-10 16:04 | 作者:luqin1988
出处:http://blog.csdn.net

因为对于flex本人也是新手,此前按照网上的各种方法进行试验,都没能实现flex与java的通信。也许是eclipse和tomcat版本的问题。后来经过几天的尝试,终于成功了。。。现和大家分享一下,希望和我一样曾经饱受困扰的同胞们,能够根据我的Demo,配置成功!

好,闲话少说,开始。

一、推荐环境

1、jdk1.6

2、Myeclipse 8.5 (或以上版本)

3、Flash Builder 4 Plug-in

4、tomcat6.0.32

  Blazeds官方下载地址:(需要用户注册)

http://flexorg.wip3.adobe.com/blazeds/4.x/17657/blazeds-turnkey-4.0.1.17657.zip

二、项目的建立和整合

1、在Myeclipse中新建一个Web Project,名为FlexJava.

 

 

\ 

 

  3.部署应用FlexJava到Tomcat服务器中,并启动tomcat服务。

\

 4.为FlexJava项目添加blazeds支持:

      1>解压BlazeDS.war到任意文件夹,里面包含WEB- INF和META-INF两个文件夹。

      2>复制WEB- INF文件夹,覆盖项目中WebRoot下的WEB- INF文件夹。(目的是为了得到其子文件夹flex中的配置文件和lib中的资源包,以及web.xml的内容)

 

  5.为项目增加Flex支持,右键项目名称,点击“添加/更改项目类型”,“添加Flex项目类型”

 

\

 

\

 

 

\

  点击“Finish”,结束操作

6、代码的新建和修改

1>在FlexJava/src目录下新建类HelloWorld

Java代码如下:

package com.bx; 
 
public class HelloWord { 
    public class HelloWorld { 
        public HelloWorld() { 
        } 
 
        public String sayHelloWorld(String name) { 
            return "Hello First Demo" + name; 
        } 
 
    } 

 
2>编辑FlexJava.mxml
代码如下:
<?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">    
     
    <fx:Script>    
        <![CDATA[    
            import mx.controls.Alert;    
            import mx.rpc.events.ResultEvent;    
             
            protected function myFlex_resultHandler(event:ResultEvent):void{    
                var name:String=event.result as String;    
                Alert.show(name);    
            }    
            protected function button1_clickHandler(event:MouseEvent):void   
            {      
                myFlex.sayHelloWorld(txtName.text);    
            }    
        ]]>    
    </fx:Script>    
     
    <fx:Declarations>    
        <!-- 将非可视元素(例如服务、值对象)放在此处 -->    
        <s:RemoteObject id="myFlex" destination="mytest" result="myFlex_resultHandler(event)"/>    
    </fx:Declarations>    
    <s:Button x="209" y="135" label="按钮" click="button1_clickHandler(event)"/>    
    <s:TextInput x="166" y="81" id="txtName"/>    
    <s:Label x="10" y="81" text="请输入内容:" fontSize="15" fontWeight="bold" fontFamily="中易黑体"/>    
</s:Application>   
 
3> 编辑WEB-INF/flex/remoting-config.xml文件:(其实就是增加了destination)
<?xml version="1.0" encoding="UTF-8"?>
<service id="remoting-service" class="flex.messaging.services.RemotingService">
 
    <adapters>
        <adapter-definition id="java-object"
            class="flex.messaging.services.remoting.adapters.JavaAdapter"
            default="true" />
    </adapters>
 
    <default-channels>
        <channel ref="my-amf" />
    </default-channels>
    <destination id="mytest">
        <properties>
            <source>com.bx.HelloWorld</source>
        </properties>
    </destination>
 
</service>

7.右键项目名称,点击properties/Flex构建路径,修改输出文件夹 URL;

\ 

另:完成这些步骤后,有的同胞的项目可能会有错,但下栏console里,不报错。

本人的解决方法:把FlexJava.mxml从“源代码”视图切换到“设计”视图,就会在下栏的console中显示具体错误

\

此时,只需选中错误,右键,选择“重新创建模板”,错误就会消失。

7、至此,配置基本完毕。重启tomcat,运行FlexJava.mxml即可。

\

点击“按钮”,成功进行通讯

\

作者:luqin1988 发表于2012-10-10 16:04:45 原文链接
阅读:24 评论:0 查看评论

相关 [flex java blazeds] 推荐:

Flex与java通过BlazeDS实现通信(简单Demo)

- - CSDN博客推荐文章
因为对于flex本人也是新手,此前按照网上的各种方法进行试验,都没能实现flex与java的通信. 也许是eclipse和tomcat版本的问题. 后来经过几天的尝试,终于成功了. 现和大家分享一下,希望和我一样曾经饱受困扰的同胞们,能够根据我的Demo,配置成功. 2、Myeclipse 8.5 (或以上版本).

Java与Flex学习笔记----用CSS控制页面样式

- - BlogJava-首页技术区
以前对于Flex网页布局还不是很明白,基本上没有什么修饰. 但是做完了一个仿“115网盘”的页面后,对页面控制有了一个基本的了解,现总结一下.      本人一开始接触的就是Flex4,据说Flex3的css布局很脊椎,也不知道是不是这样. 但是Flex4的网页布局很牛X,再配上各种事件,可以实现需要写很多JavaScript/Ajax代码才能实现的效果.

Flash与Flex路在何方?

- chris - 伯乐在线 -博客
  注:本文转载自InfoQ - 张龙.   Adobe想要强化Flash与Flex在企业,特别是在移动领域中的地位. 但最近的一项调研表明jQuery已经超越了Flash,成为前17,000个网站首选的Web部署解决方案.   近日,来自Adobe Systems开发工具事业部的产品经理Andrew Shorten在Adobe的官方博客上发表了一篇博文,谈到了Flash与Flex的当前状态,并就Adobe的旗舰平台给出了自己的一些看法.

移动端flex布局实战

- -
做过移动端的同学都知道移动端布局太难了,终端太多了,传统的布局方式已经力不从心,各种新的布局方式被发明. 在flex之前,传统布局有流式布局(就是默认的方式),绝对定位布局,弹性布局(em),和浮动布局,其中浮动布局并不是为布局而设计的,使用起来略显繁琐. 2009年,对前端来说是不平凡的一年,html5定稿,es5.1发布,flex应运而生,天生响应式,生而为布局,使用及其简单.

写编译器:学习GNU Flex,写一个词法分析器

- zffl - Xiaoxia[PG]
以下内容仅为个人学习笔记,非正规教程,难免有疏漏之处,请指出. 目标要分析词法的对象是一种叫TINY+的计算机语言. char str; int x, fact; str:= 'sample program in TINY+ language- computes factorial'; read x; if x>0 and x<100 then {don’t compute if x<=0}.

跨平台工具详解之二:Adobe Air/Flex

- - Web App Trend
Adobe位于CaliforniaSan Jose,成立于1982年. Adobe在NASDAQ上市,拥有1万名左右的员工,仅2011年一年的税收超过40亿美金. Adobe的核心业务是开发出专业的设计创意工具,比如,Photoshop和Dreamweaver,数字化演示解决方案,包括Acrobat PDF和Flash,其中Flash是由Adobe收购Macromedia而来.

Adobe 声明对Flex的态度及日后的承诺

- - ITeye资讯频道
去年11月份, Adobe宣布贡献出Flex SDK代码,并与该项目基金会一道将Flex SDK捐献给一家新设的开源基金会. 今天, Adobe关于对Flex的态度及日后的承诺作出声明,总结如下:. Flex归Apache,社区模式管理,Adobe派工程师团队参与;. 在企业级开发领域,Flex至少在未来几年内仍占据优势;.

Flex Lighting LED 薄膜将你的 E Ink 阅读器点亮

- 请叫我火矞弟 - Engadget 中国版
看来这个新技术将会大大改变 E Ink 读者的阅读习惯了:Flex Lighting 宣布他们开发了一款只有 0.05 mm 厚度的超薄 LED 薄膜,能不大大地改变 Kindle 等传统 e-ink 电子阅读器的厚度,但又为它们带来有如彩色屏幕那样的照明系统. 据该公司所说,传统的 LED 膜技术不单较厚,也要用上一系列的 LED 灯来将光贯穿整张膜;相反,他们的 LED 膜不但较薄,也只需要用上比传统技术少 40% LED 灯就可以了(却没有说用了多少颗...).

(转)Flex与JavaScript的交互:调用JavaScipt或者被JavaScript调用

- - jackyrong
一、在JavaScript中调用Flex方法. 在Flex中可以用ExternalInterface来调用Flex的方法,途径是通过在Flex应用可调用方法列表中添加指定的公用方法. 在Flex应用中通过调用addCallback()可以把一个方法添加到此列表中. addCallback将一个ActionScript的方法注册为一个JavaScript和VBScript可以调用的方法.