答网友提问,做了一个RemoteObject的简单Demo。
主要实现java类方法调用,java对象数组传递,flex数据传递

程序在以下环境编译执行通过:
flex 1.5 Trail Edition
Tomcat/5.0.19
j2sdk1.4.2_10
WindowsXp Sp2


java文件编译后未打包,.class文件直接放到{flex-dir}\WEB-INF\classes 目录下
实体User.java注意要实现Serializable接口,否则无法将对象传递到Flex。

注意修改Flex的访问控制, flex-config.xml 增加<source>*</source>
Flex RemoteObject 简单应用Demo<remote-objects>
Flex RemoteObject 简单应用Demo 
<whitelist>
Flex RemoteObject 简单应用Demo            
<!-- whitelist config for unnamed objects -->
Flex RemoteObject 简单应用Demo            
<unnamed>
Flex RemoteObject 简单应用Demo            
<source>*</source> 
Flex RemoteObject 简单应用Demo            
</unnamed>
Flex RemoteObject 简单应用Demo 
</whitelist>
Flex RemoteObject 简单应用Demo
</remote-objects>


RemoteObjectDemo.mxml

Flex RemoteObject 简单应用Demo<?xml version="1.0" encoding="utf-8"?>
Flex RemoteObject 简单应用Demo
Flex RemoteObject 简单应用Demo
<mx:Application xmlns:mx="http://www.macromedia.com/2003/mxml" verticalGap="10" initialize="initApp()">
Flex RemoteObject 简单应用Demo
Flex RemoteObject 简单应用Demo    
<mx:Script>
Flex RemoteObject 简单应用Demo        
<![CDATA[
Flex RemoteObject 简单应用Demo        var userList;
Flex RemoteObject 简单应用Demo    
Flex RemoteObject 简单应用Demo        function initApp() {
Flex RemoteObject 简单应用Demo            userRO.getAllUser();
Flex RemoteObject 简单应用Demo        }
Flex RemoteObject 简单应用Demo
Flex RemoteObject 简单应用Demo        ]]
>
Flex RemoteObject 简单应用Demo    
</mx:Script>
Flex RemoteObject 简单应用Demo
Flex RemoteObject 简单应用Demo    
<mx:RemoteObject id="userRO" source="UserManager"
Flex RemoteObject 简单应用Demo        result
="userList=event.result" fault="alert(event.fault.faultstring, 'Error')">
Flex RemoteObject 简单应用Demo        
Flex RemoteObject 简单应用Demo    
</mx:RemoteObject>
Flex RemoteObject 简单应用Demo
Flex RemoteObject 简单应用Demo    
<mx:HBox>
Flex RemoteObject 简单应用Demo        
Flex RemoteObject 简单应用Demo        
<mx:Label text="Search"/>
Flex RemoteObject 简单应用Demo        
<mx:TextInput id="key" width="120"/> 
Flex RemoteObject 简单应用Demo       
Flex RemoteObject 简单应用Demo        
<mx:Button label="Get User List" click="userRO.getUser(key.text)"/>
Flex RemoteObject 简单应用Demo
Flex RemoteObject 简单应用Demo    
</mx:HBox>
Flex RemoteObject 简单应用Demo
Flex RemoteObject 简单应用Demo    
<mx:DataGrid dataProvider="{userList}" width="100%">
Flex RemoteObject 简单应用Demo        
<mx:columns>
Flex RemoteObject 简单应用Demo            
<mx:Array>
Flex RemoteObject 简单应用Demo                
<mx:DataGridColumn columnName="id" headerText="Id"/>
Flex RemoteObject 简单应用Demo                
<mx:DataGridColumn columnName="name" headerText="Name"/>
Flex RemoteObject 简单应用Demo                
<mx:DataGridColumn columnName="phone" headerText="Phone"/>
Flex RemoteObject 简单应用Demo                
<mx:DataGridColumn columnName="email" headerText="Email"/>
Flex RemoteObject 简单应用Demo            
</mx:Array>
Flex RemoteObject 简单应用Demo        
</mx:columns>
Flex RemoteObject 简单应用Demo    
</mx:DataGrid>
Flex RemoteObject 简单应用Demo
Flex RemoteObject 简单应用Demo
</mx:Application>
Flex RemoteObject 简单应用Demo

UserManager.java
Flex RemoteObject 简单应用Demoimport java.util.ArrayList;
Flex RemoteObject 简单应用Demo

User.java
Flex RemoteObject 简单应用Demoimport java.io.Serializable;
Flex RemoteObject 简单应用Demo

相关文章: