论坛首页 Web前端技术论坛

blazeds简单例子

浏览 13062 次
精华帖 (0) :: 良好帖 (0) :: 新手帖 (0) :: 隐藏帖 (0)
作者 正文
   发表时间:2008-09-07  

已经在早前就听说了,Adobe公司的开源项目bazeds,可是当时做flash,用到了openamf,所以没有在意,但是现在觉得flex开发应用软件更具有杀伤力,所以准备研究flex。折腾了一周的时间想做个flex+java的helloworld例子,可是怎么都运行不出来,今天终于运行出来了。

总结,共有一下几种方法:

1,flex项目和web项目在同一项目。

2,flex项目和web项目为两个项目,进行交互。

个人认为,第二种比较好,这样可以完全将flex卡发和web业务开发分开。我这里也介绍第二种方法。

下面介绍我的hello小程序。

首先,开发环境

1,eclipse3.2+myeclipse5.1,不多说

2,eclipse的flex插件:FB3_WWEJ_Plugin.exe

3,必须得到blazeds.war,网上很多,可以进行下载(附件中配备)

下来,演示例子。

1,创建web项目:

     我的项目是hello

2,将blazeds.war放入tomcat中,启动,将blazeds.war项目中的,WebConten/Web-Inf复制

3,替换hello项目(用刚才复制的将此项目(hello)中的替换)

4,在web项目中建立java类

 

package com.demo;

public class HelloWorld {

    public String sayHello(String name) {
        
        System.out.println(name);
        return"hello," + name;

    }

}

 5,在刚才复制的flex目录下打开remoting-config.xml,写入一下代码

<destination id="Hello">
       <properties>
           <source>com.demo.HelloWorld</source>
       </properties>
    </destination>

 

6,发布此项目。

以上是web项目中的内容,下来看看flex项目

1,创建flex项目,flexTest,application type 选择 web application, server technology 选择none,点next,output folder 中选择你上面建立web工程的目录(这里就是hello),很多地方都说选择j2ee,这个是建立集成项目时候选择的。

2,写入mxml

<?xml version="1.0" encoding="utf-8"?>
<mx:Application xmlns:mx="http://www.adobe.com/2006/mxml" layout="absolute">
<mx:Script >      
<![CDATA[ import mx.rpc.events.FaultEvent;    
   import mx.rpc.events.ResultEvent;    
      [Bindable]    
      private var helloResult:String;   
      
      private function sayHello():void {    
        ro.sayHello(inputText.text);    
        }    
        
       private function resultHandler(event:ResultEvent):void {    
          helloResult = event.result as String;    
       } 
       
   ]]>   
</mx:Script >
<mx:RemoteObject id="ro" destination="Hello" result="resultHandler(event)" endpoint="/Hello/messagebroker/amf"/>
<mx:HBox x="0" y="10" width="100%">
   <mx:Label text="Name:" id="nameLabel"/>
   <mx:TextInput id="inputText"/>
   <mx:Button label="say Hello" id="nameButton" click="sayHello()"/>
   <mx:Label id="resultLabel" text="{helloResult}"/>
</mx:HBox>

</mx:Application>

 

3,最重要的endpoint="/Hello/messagebroker/amf"/,这个一定要写对,别把我的文件复制过去,hello是你自己的web项目。

 

这样就完成了,你启动tomcat,自己测试,这样做的好处是,flex保存后,web项目会自动同步flex内容。

讲得不清楚,我会带上一个项目的附件,提供下载。

 

   发表时间:2008-09-09  
3,最重要的endpoint="/Hello/messagebroker/amf"/,这个一定要写对,别把我的文件复制过去,hello是你自己的web项目。

这句话太又用了,谢谢。
0 请登录后投票
   发表时间:2008-09-12  
不客气,互相帮助,共同进步
0 请登录后投票
   发表时间:2008-12-22  
endpoint是什么意思
0 请登录后投票
   发表时间:2008-12-23  
wqt123456 写道
3,最重要的endpoint="/Hello/messagebroker/amf"/,这个一定要写对,别把我的文件复制过去,hello是你自己的web项目。

这句话太又用了,谢谢。



endpoint="/Hello/messagebroker/amf"/ 中的Hello能不能做成动态改变的
0 请登录后投票
   发表时间:2009-01-14  
FengShen_Xia 写道
wqt123456 写道
3,最重要的endpoint="/Hello/messagebroker/amf"/,这个一定要写对,别把我的文件复制过去,hello是你自己的web项目。

这句话太又用了,谢谢。



endpoint="/Hello/messagebroker/amf"/ 中的Hello能不能做成动态改变的
,还有能不能解释下这句的意思
谢谢了
0 请登录后投票
   发表时间:2009-01-15  
AIR程序如果使用RemoteObject 好像必须定义endpoint ,应该是遵循的一个amf协议
0 请登录后投票
   发表时间:2009-02-01  
endpoint已经在配置文件里面定义了啊,应该不需要再定义一下吧
0 请登录后投票
   发表时间:2009-02-03  
关于endpoint的解释没有人说得详细一点吗?
0 请登录后投票
   发表时间:2009-02-18   最后修改:2009-02-18
受用了,很好很多谢。

回楼上, endpoint 是服务器端接收flex请求的端点,可以看作Jsp中的 form 的 action 属性,由其对应的类或jsp来处理传进来的参数。
0 请登录后投票
论坛首页 Web前端技术版

跳转论坛:
Global site tag (gtag.js) - Google Analytics