<!-- Feedsky FEED发布代码开始 -->
欢迎点击此处订阅本Blog
<!-- FEED自动发现标记开始 --> <link title="RSS 2.0" type="application/rss+xml" href="http://feed.feedsky.com/softwave" rel="alternate"> <!-- FEED自动发现标记结束 -->
<!--Google 468*60横幅广告开始--><script type="text/javascript"><!-- google_ad_client = "pub-7343546549496470"; google_ad_width = 468; google_ad_height = 60; google_ad_format = "468x60_as"; google_ad_type = "image"; //2007-07-26: CSDN google_ad_channel = "6063905817"; google_color_border = "6699CC"; google_color_bg = "E6E6E6"; google_color_link = "FFFFFF"; google_color_text = "333333"; google_color_url = "AECCEB"; google_ui_features = "rc:6"; //--> </script><script type="text/javascript" src="http://pagead2.googlesyndication.com/pagead/show_ads.js"> </script><!--Google 468*60横幅广告结束-->
在网上搜了好久都没有找到现成的,只好自己把一些BBS里面的东西整理整理了。
现在网上的资料大部分都是讲如何将flex和java整合到一个工程里以实现交互的方法(谢谢cimmicola的flex+lcds+java入门教 程),但是我的问题是要把flex和java写在不同的工程里并实现交互,flex端用FB3实现(大量的界面),java端用Myeclips实现(数据库访问等)。哪位大师有好办法?
其实很简单
首先搭建lcds服务,lcds服务可以整合到你自己的java web工程中作为一个服务来使用,也可以单独跑起来,因为它本来就是一个独立的web工程。
我介绍前者:将lcds服务整合到自己的java应用中。后面方法一个发布时麻烦点,还要把编译好的class放到lcds环境下,不推荐这么做。
lcds端
1.使用myeclipse建立一个java web工程
2. 解压lcds的flex.war,因为没有开发工具了,就得手动提取flex.war文件,其实用winrar就可以解压了,解压后的WEB-INF目录 复制到自己的java web工程的WebRoot下,覆盖WEB-INF。这样就将lcds服务和自己的java web工程整合了。
可以启动自己的java web应用,看看能不能正常启动。需要注意的是,lcds里提供了rtmp支持,这是开通了一个socket端口,因此,如果一个web容器中存在相同的端口就会报冲突,无法启动。
这个javaweb工程访问路径是http://localhost:8080/JavaRemoteService/
工程(发布后)物理路径是E:/WebServers/tomcat6/webapps/JavaRemoteService
2.编写java方法
-
package
test;
-
public
class
RemoteObject{
-
public
StringsayHello(Stringword){
-
System.out.println(word);
-
return
word;
-
}
-
}
3.配置remoting-config.xml
增加
-
<
destination
id
=
"ro"
>
-
<
properties
>
-
<
source
>
test.RemoteObject
</
source
>
-
<
scope
>
application
</
scope
>
-
</
properties
>
-
</
destination
>
flex端
1.建立一个基于lcds的flex工程。注意参数和之前java 工程的关系。不多说,上图
向导配置1
向导配置2
2.编写代码
-
<?
xml
version
=
"1.0"
encoding
=
"utf-8"
?>
-
<
mx:Application
xmlns:mx
=
"http://www.adobe.com/2006/mxml"
layout
=
"absolute"
>
-
<
mx:Script
>
-
<![CDATA[
-
importmx.controls.Alert;
-
privatefunctiondoRemoteCall(){
-
ro.sayHello("hi");
-
}
-
]]>
-
</
mx:Script
>
-
<
mx:Button
click
=
"doRemoteCall()"
/>
-
<
mx:RemoteObject
result
=
"Alert.show(event.result.toString());"
-
destination
=
"ro"
-
source
=
"test.RemoteObject"
-
id
=
"ro"
/>
-
</
mx:Application
>
3.运行flex工程
如果运行正常,应该会出现FLEX的“hi”对话框
参考文献:
http://www.riachina.com/showtopic-11479.html
<!--新Google 468*60横幅广告开始--><script type="text/javascript"><!-- google_ad_client = "pub-7343546549496470"; /* 468x60, 创建于 08-8-6 */ google_ad_slot = "7368701459"; google_ad_width = 468; google_ad_height = 60; //--> </script><script type="text/javascript" src="http://pagead2.googlesyndication.com/pagead/show_ads.js"> </script><!--新Google 468*60横幅广告结束-->
<!--新Google 468x15 横链接单元开始--><script type="text/javascript"><!-- google_ad_client = "pub-7343546549496470"; /* 468x15 横链接单元 */ google_ad_slot = "5785741422"; google_ad_width = 468; google_ad_height = 15; //--> </script><script type="text/javascript" src="http://pagead2.googlesyndication.com/pagead/show_ads.js"> </script><!--新Google 468x15 横链接单元结束-->
<!-- Google Reader shared发布代码开始 --><script type="text/javascript" src="http://www.google.com/reader/ui/publisher.js"></script><script type="text/javascript" src="http://www.google.com/reader/public/javascript/user/00697638153916680411/state/com.google/broadcast?n=5&callback=GRC_p(%7Bc%3A%22green%22%2Ct%3A%22%5Cu8FD9%5Cu4E9B%5Cu6587%5Cu7AE0%5Cu4E5F%5Cu503C%5Cu5F97%5Cu4E00%5Cu770B%22%2Cs%3A%22false%22%7D)%3Bnew%20GRC"></script><!-- Google Reader shared发布代码结束 -->
Flex Builder 3 与 MyEclipse结合开发环境的搭建