Flex3利用LCDS整合java开发:
1.       环境搭建:
a)         下载flex3工具:
查看全部工具见:
b)        下载myeclipse开发工具:
可以在Google上随便找:
这里给一个仅供参考:
MyEclipse 6.0 官方下载地址:
http://www.myeclipseide.com/module-htmlpages-display-pid-4.html

MyEclipse 6.0
注册序列号 :
NLR8ZC -855550-6552685393219112<?xml:namespace prefix = o ns = "urn:schemas-microsoft-com:office:office" />

c)         下载LCDS:
注册后下载,免费用

 

d)        安装好工具!要注意的就是安装LCDS时候选上tomcat服务器!装好后可以这个服务器添加到MyEclipse中直接用,这样省去了修改很多配置麻烦,当然熟悉这些以后自己想怎么玩就怎么玩了!

 

2.       现在我们开始建立工程项目来完成我们的后台java+前台flex
a)         首先我们在MyEclipse中新建一个web项目名叫lcds.为了更快的体验成功的喜悦,我们将LCDS安装目录下面的一个lcds文件夹提供了一个包含完整配置的样式工程!
b)       

 

我们将该文件里面的东西复制到我们在MyEclipse中新建的lcds中覆盖掉相应的文件!
c)        

 

然后在MyEclipse中把LCDS安装目录下面的tomcat服务器添加到MyEclipse,然后将项目发布到服务器上,并启动服务器,
成功后了,就说明我们的服务器配置无误!

 

好了到此我们们的web工程建好了!

 

d)        现在在flex build中建立我们flex项目工程lcds(这里要与我们MyEclipse的项目名称一致,这样有很多好处,后面你会知道的)!

 

现在我们在flex中新建工程!首先按照下面选择web 应用程序的服务器为J2EE
用上LCDS服务器!

 

 

具体的配置过程如下:
首先:按照如下选择:

 

<?xml:namespace prefix = v ns = "urn:schemas-microsoft-com:vml" />

 

 

 

然后设置路径:注意这里一定要设置正确!
LCDS安装在D盘的,所以定位到我们用MyEclipse创建的web项目lcds发布的位置!
然后点击验证配置,通过就OK!

 

 

这里解释下:
Root folder是我们的项目工程的位置.
Root URL使我们在浏览器中访问web服务的地址!
Content root就是我们项目的根目录了!
Output folder就是我们编译后的flex文件输出的位置了!

 

好了现在我们在flex建个测试页面,然后在我们的MyEclipse中链接到这个测试页面!
在浏览器中访问我们的web,成功显示,那么我们的配置就成功了!

 

 

3.好了,现在开始我们的整合测试!

 

a).首先在MyEclipselcds项目中建立java的测试类:
package lcds.test;

 

public class LCDSTest {

 

       int i = 1;
       String name = "hello!";
      
       public String getName()
       {
              return name;
       }
}

 

b).flex文件下的remoting-config.xml文件中添加Test的目标项!
<?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>

    <! 这里添加我们测测试类Test,我们在客户端就是通过这个id(Test)访问我们的java类的,关于详细的配置看看我们的开发文档吧- à

   <destination id="Test">  

     <properties>  

          <source>lcds.test.LCDSTest</source>  

          <scope>request</scope>

     </properties>  

   </destination>

</service>

 

      

 

c).现在在flex builer中建立一个test.mxml
<?xml version="1.0" encoding="utf-8"?>

<mx:Application xmlns:mx=" http://www.adobe.com/2006/mxml " layout=" vertical " >   

   

      <mx:RemoteObject id=" myservice " source=" factory.Test " destination=" Test " fault="faultHandler(event)" showBusyCursor=" true " >

       // 申明我们要调用的方法

        <mx:method name=" getName " result="resultHandler(event)" fault="faultHandler(event)" >  

        </mx:method>

</mx:RemoteObject>  

// 点击按钮获取我们 JavaBean 中的值

<mx:Button label=" click " click="clickFun()" />   

// 显示我们调用的结果

   <mx:RichTextEditor title=" Title " width=" 525 " id=" info " >

</mx:RichTextEditor>

  

    <mx:Script>   

        <![CDATA[  

            import mx.collections.ArrayCollection;  

            import mx.rpc.events.ResultEvent;  

            import mx.rpc.events.FaultEvent;

       

 

            [ Bindable ]  

            public var listSight:ArrayCollection= new ArrayCollection();  

            public function clickFun(): void { 

             

                myservice.getName();                             

            }  

       // 成功后输出结果

            public function resultHandler(event:ResultEvent): void {  

                info.text = "get data successfully" ;  

                info.text =   event.result.toString();

               

            }  

           // 输出发生错误的结果

            public function faultHandler(event:FaultEvent): void {  

               info.text = "Error and xxx" +event.fault;  

               //info.text = "edfnierif";

            } 

        ]]>  

       

    </mx:Script>  

</mx:Application>

 

好了到此为止,我们java+flex整合完毕,只等测试成功了!

 

总结:中间要注意的地方
首先就是配置文件,我在做这个测试的就配置文件就研究很长时间!
Flex文件夹下面的配置文件就好几个,要完整的对配置文件的详解还有很多的东西,这里我只是记录了自己学习该方案的过程,有时间再写吧!
其次是在在远程调用JavaBean的时候很容出现沙箱错误!
                                                                                                                                                                                      记录时间20093
                                                                                                                                                                                                           Kares