开发环境:
(1)安装了flex插件的myeclipse6.0
(2)tomcat5.5
(3)lcds2.6
三者的配置网上有很多教程,可以参照那份(flex+lcds+java教程,感谢写这篇教程的网友)。
User.java代码:
- package com.test;
- import java.io.Serializable;
- public class User implements Serializable {
- private String strName;
- private String strAddress;
- private int intAge;
- //get 和 set 方法省略
- }
MyFirstFlex.java代码:
- package com.test;
- public class MyFirstFlex {
- public User getUser()
- {
- User user = new User();
- user.setIntAge(24);
- user.setStrAddress("南京");
- user.setStrName("smallquick");
- return user;
- }
- }
配置remoting-config.xml(目录:web-inf/flex/)在server标签中加入下面一段
- <destination id="getUser">
- <properties>
- <source>com.test.MyFirstFlex</source>
- <scope>application</scope>
- </properties>
- </destination>
MyFirstFlex.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.ResultEvent;
- import mx.controls.Alert;
- private function getUser():void
- {
- userRO.getUser();
- userRO.addEventListener(ResultEvent.RESULT,getROResult);
- }
- private function getROResult(e:ResultEvent) :void
- {
- var user:Object = e.result as Object;
- if(user != null)
- {
- txtName.text = user.strName;
- txtAddress.text = user.strAddress;
- txtAge.text = user.intAge;
- }
- else
- {
- Alert.show("没有结果!");
- }
- }
- ]]>
- </mx:Script>
-
- <mx:RemoteObject id="userRO" destination="getUser"/>
- <mx:Panel x="109" y="65" width="411" height="249" layout="absolute" fontSize="12">
- <mx:Label x="69" y="36" text="姓名"/>
- <mx:Label x="69" y="74" text="年龄"/>
- <mx:Label x="69" y="118" text="地址"/>
- <mx:Button x="189" y="161" label="请求" id="btnRequest" click="getUser()"/>
- <mx:TextInput x="126" y="34" id="txtName"/>
- <mx:TextInput x="126" y="72" id="txtAge"/>
- <mx:TextInput x="126" y="116" id="txtAddress"/>
- </mx:Panel>
- </mx:Application>
ok,代码写完,部署到tomcat5.5
运行MyFirstFlex.mxml,得到如下图:
点击请求按钮,如下图得到结果: