j2ee+flex+blazeds 配置实践

news/2024/5/19 17:17:25 标签: Flex, Myeclipse, Tomcat, Web, Flash

我们要实现的目的:

    1.希望在myeclipse里面可以创建flex项目。

    2.在flex中编辑的mxml文件,保存后能够自动的生成flash文件和html文件以供测试,当然正式发布的时候很多的HTML是要删除的。

    3.利用myeclipse在工程中实时同步机制,把我们编译后的flash和html文件直接同步到web工程,然后工程自动部署到tomcat,这样测试就很方便了,因为同步flash和html文件到tomcat根本就不用重新启动。

    注意我们的关键点本质上只是把flex项目的编译输出直接到web工程。

    好了,现在开始准备工具:

    环境搭建: Java5.0,tomcat5.5,eclipse 3.2(及以上),myeclipse(5.5及以上),FB3_WWEJ_Plugin.exe等等,按顺序都把他们先装上,然后myeclipse里 面配置好tomcat这个就不详细说了。然后去下载个blazeds,这个自己去搜索吧!(我的附件里面有)

    blazeds与web工程的搭建: myeclipse中先创建个web项目myflex,注意要导入blazeds里面的相关jar,web.xml,还有WEB-INF里面flex目录下面的所有文件。最好的操作方法是,先把blazeds解压,然后再新建的工程里面WebRoot -> 右键 -> import -> File System -> next -> 选择你解压后的blazeds 目录, finish。这样会有提示是否要覆盖,点yes to all就OK了。

接下来在服务器端可以简单的写个helloWorld的类了,相关的配置弄好

package com.spell;

public class HelloWorld {

    public String sayHello(String name) {

        return "hello," + name;

    }

}

WebRoot/WEB-INFO/remoting-config.xml 中加入 id="Hello" destination

    <destination id="Hello">

       <properties>

           <source>com.spell.HelloWorld</source>

       </properties>

    </destination>

ok,可以部署到tomcat了,并且启动tomcat,这个时候不要着急着去测试

    flex工程的搭建: 这个是最让人恼火的地方了,这个地方上我走了很多的弯路,看那了网络上很多人所谓的配置,结果差点把我给搞死。后来还是自己的思路清晰点。

    建个flex工程,输入工程的名称flexTest,application type 选择 web application, server technology 选择none,点next,output folder 中选择你上面建立web工程的目录(MyEclipse里就是myflex工程目录下的WebRoot了), 这个很重要了,要不这边flex就不会自动到web工程了,那只有人工的拷贝了,这样做是很悲哀滴!!最后finish,好了这样flex工程也好了

 

flexTest.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="/myflex/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>

    这个文件好了后,你只要保存下就可以敲入URL测试了(保存后马上就output到myflex项目中了,然后又自动同步到tomcat,前面tomcat已经启动了),我的是http://localhost:8080/myflex/flexTest.html ,表单中输入名字,然后点下按钮,就跟你说hello了,是不是很兴奋了,恭喜flex你入门了。这里一定要指定endpoint, 要不然与服务器的交互会失败,endpoint的/myflex根据你web项目的名称不同而不同。endpoint不要指定死,如:http://localhost:8080/myflex/messagebroker/amf ,这样到了以后部署的时候是会有错误的。

 


http://www.niftyadmin.cn/n/1040540.html

相关文章

Windows API 用户、认证和对象安全

本文转自&#xff1a;http://www.cnblogs.com/mydomain/archive/2011/02/23/1962655.html Windows系统具有很完善的安全和认证机制&#xff0c;称作访问控制机制。程序的执行主体&#xff08;线程&#xff09;在访问对象&#xff08;文件、事件等&#xff09;时&#xff0c;系统…

Session的创建时间

2008年8月17日 0:25 上一篇文章转载了《Cookie和Session专题 》&#xff0c;读了以后发现自己很多地方真的很白&#xff0c;里面的第14条&#xff1a; 十四、session什么时候被创建 *************************************************************************************…

windows内置账户区别

本文转自&#xff1a;http://www.cnblogs.com/xianspace/archive/2009/04/05/1429835.html 前言 今天在安装sqlserver2008 r2的时候&#xff0c;在Server Configuration阶段要求我设定sqlserver中各种服务的账户名称&#xff0c;如下图所示: 账户类型可以在后期修改&#xff0…

Mysql中HAVING的相关使用方法

目录 一、where与having的区别 二、显示每个地区的总人口数和总面积&#xff0e; 三、 显示每个地区的总人口数和总面积&#xff0e;仅显示那些面积超过1000000的地区。 四、 having单独使用&#xff0c;与where类似 一、where与having的区别 having字句可以让我们筛选分组…

windows station和desktop

本文转自&#xff1a;http://blog.csdn.net/zhuzhubin/article/details/5204967 window station 和desktop。它们主要是用于服务程序&#xff0c;一般的应用程序不必使用它们。它们可以用来对服务进行保护。运行在不同的window station 或不同的desktop下的应用程序&am…

C++及Windows异常处理(try,catch; __try,__finally; __try, __except)——一道笔试题引起的探究 -

本文转自&#xff1a;http://shijuanfeng.blogbus.com/logs/178616871.html 题目&#xff1a; int* p 0x00000000; // pointer to NULL puts( "hello "); __try{ puts( "in try "); __try{ puts( "in try "); *p …

JVM(二:堆的生命周期)

因为找视频耽误了点时间&#xff0c;现在补一下jvm的后续内容以作记录 堆&#xff1a;大部分的对象创建都是在“堆”中生成的&#xff0c;今天就来详细跟进一下堆&#xff1b; 目录 结构&#xff1a; 生命周期&#xff1a; 1.对象创建优先放入Eden区内 2.当我们再往放满对象…

Hello World进化史

本文转自&#xff1a;http://blog.jobbole.com/41944/ 去年发过一篇《Python程序员的进化史》&#xff0c;那篇文章是以阶乘为例&#xff0c;列举了各种程序员所写代码&#xff0c;甚至包括网页设计师的。今天这篇趣文是以 Hello World 为例&#xff0c;列举处于各阶段程序员的…