myeclipse8.5+flex发布第一个程序

 

MyEclipse_8.5+flex_4+Blazeds配置

MyEclipse_8.5+flex_4+Blazeds配置

 

需要软件:

apachetomcat.exe

myeclipse-8.0.0-win32.exe

jdk-6u12-windows-i586-p.exe

blazeds-turnkey-4.0.0.14931.zip

FlashBuilder_4_Plugin_LS10.exe

 

 

一、安装jdk

按照步骤,选择路径安装,安装成功后,在安装路径下有java文件,包含jdk和jre两个子文件。

二、JDK环境变量配置的步骤如下:

1.我的电脑-->属性-->高级-->环境变量.

2.配置用户变量:

        a.新建 JAVA_HOME

             C:\Program Files\Java\jdk1.5.0 JDK的安装路径)

        b.新建 PATH

            %JAVA_HOME%\bin;

        c.新建 CLASSPATH

            .;%JAVA_HOME%\lib;

3.测试环境变量配置是否成功:

   开始-->运行--CMD

   键盘敲入: JAVAC   -version

        出现jdk版本信息,而不是出错信息,即表示配置成功!

 

环境变量配置的理解:

  1. PATH环境变量。作用是指定命令搜索路径,在i命令行下面执行命令如javac编译java程序时,它会到PATH变量所指定的路径中查找看是否能找到相应的命令程序。我们需要把jdk安装目录下的bin目录增加到现有的PATH变量中,bin目录中包含经常要用到的可执行文件如javac/java/javadoc等待,设置好PATH变量后,就可以在任何目录下执行javac/java等工具了。

  2. CLASSPATH环境变量。作用是指定类搜索路径,要使用已经编写好的类,前提当然是能够找到它们了,JVM就是通过CLASSPTH来寻找类的。我们需要把jdk安装目录下的lib子目录中的dt.jartools.jar设置到CLASSPATH中,当然,当前目录“.”也必须加入到该变量中。

  3. JAVA_HOME环境变量。它指向jdk的安装目录,Eclipse/NetBeans/Tomcat等软件就是通过搜索JAVA_HOME变量来找到并使用安装好的jdk

 

三、安装Apache Tomcat web服务器

最好与jdk安装在同一目录下,自动搜索jre所在位置。

不在同一目录时,需要手工浏览到jdk的安装路径,端口默认为8080,也可自定义。

安装完成后,在浏览器中输入:http://localhost:端口号,如果显示apace tomcat网页,则安装成功!

 

四、安装Myelipase 8.0                                                           按照步骤安装,安装完成后,重启计算机,最后配置环境:

1 打开myeclipse, 
->Servers->Tomcat,选择tomcat的版本,进行配置tomcat。

2

3

 

三、安装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、ds-console.war、samples.war拷贝到Tomcat下的webapps文件夹中就好,

运行下,http://localhost:8080/samples 看看有没有配置成功

 

搭建一个web工程没有那么简单,因为flex只是做为表示层展示,flex只接收java返回数据,那怎么和java服务端通信呢?这时我们需要用到adobe公司开发的一个开源项目Blazeds。

Blazeds是一个基于服务器的 Java 远程控制 (remoting) 和 Web 消息传递 (messaging) 技术,以LGPL(Lesser GNU Public License)公共许可证书发布。它能够使得后端的 Java 应用程序和运行在浏览器上的 Adobe Flex 应用程序相互通信。在Java应用服务器上,它以servlet的形式存在, 因此可以在任何标准Java网络应用中运用它。下载地址是:Blazeds

二、打开Myeclise8.0新建一个javaweb工程,选择javaEE 5.0如图2

 


 

三、右击WebRoot选择import—>GeneralàFile system,展开发现在WEB-INF目录下面多了flex文件夹,这个很重要主要是通信的4个配置文件。如图3




 

右击WebRoot选择import—>GeneralàFile system





单击Browse 选择tomoat服务器安装地址,然后选择webapps中的blazeds文件夹(就是你配置Blazeds的地址)



单击确定,然后勾选它





导入成功

四,部署flexweb项目到tomcat里面。这部重要因为下面要整合flex必须得启动服务。我部署的服务器物理路径为:D:\soft\apache\tomcat\webapps\flexweb

单击图中红色圆圈的按钮

 


 

选择 Tomcat 6.x,然后Finish部署成功,在Tomcat 服务器下面的webapps文件夹下就有first这个文件夹了

 

 

 

 

 

 

 

 

六、转换为flex项目,首先选中你的jspweb项目右键选择添加/更改项目类型,在选择添加flex项目类型

 



 所以就这样填,看你的端口而定然后在加上你的项目名称,上下文根目录就填项目名称就行了。最后输出路径我把后面的目录改为flex。记得点一下验证配置只有通过才有效哦,如图6

九、解决创建的错误如图7




 

 



 <?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>test.Accptech</source>
    </properties>
 </destination>
</service>
 

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

<destination id="mytest">
    <properties>
        <source>test.Accptech</source>
    </properties>
 </destination>

这个是配置flex访问java方法的一个远程对象方法,配置后就可以与java通信了。我们试试吧

 

三、flex配置远程对象

我的配置如下

 
<?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="1024" minHeight="768">
 <fx:Script>
 <![CDATA[
   import mx.controls.Alert;
   import mx.rpc.events.FaultEvent;
   import mx.rpc.events.ResultEvent;

   protected function myFlex_resultHandler(event:ResultEvent):void
   {
    var name:String=event.result as String;
    Alert.show(name);
   }


   protected function btnSend_clickHandler(event:MouseEvent):void
   {
    myFlex.helloWorld(txtName.text);
   }

 ]]>
 </fx:Script>
 <fx:Declarations>
 <!-- Place non-visual elements (e.g., services, value objects) here -->
 <s:RemoteObject id="myFlex" destination="mytest" result="myFlex_resultHandler(event)" />
 </fx:Declarations>
 <s:Panel x="87" y="20" width="250" height="200" title="www.accptecg.comflex4">
 <s:TextInput x="16" y="37" id="txtName"/>
 <s:Button x="168" y="38" label="发送" id="btnSend" click="btnSend_clickHandler(event)"/>
 </s:Panel>
 
</s:Application>
 

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

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

然后点发送按钮时发送远程对象的helloWorld方法,执行click="btnSend_clickHandler(event)"

四、重新验证flex服务器

 






 

 

 

posted @ 2012-03-12 19:20  skyCc--天空副本  阅读(967)  评论(0编辑  收藏  举报