标题中的“flex调用java方法”指的是在Adobe Flex(一种基于ActionScript的开源框架,用于构建富互联网应用程序)中调用后端Java服务的技术。在描述中提到了使用Blazeds作为中间件来实现这种交互,Blazeds是一个开放源码的Flex与Java集成平台,它提供了多种方式让Flex客户端能够与Java应用服务器进行通信。
为了建立Flex与Java的交互工程,我们需要做以下几步:
1. **下载和准备Blazeds**:从官方网站或其他资源下载Blazeds的压缩包,解压缩并提取所需的“META-INF”和“WEB-INF”文件夹及其内容。
2. **创建Web工程**:在MyEclipse环境中创建一个新的Web工程,例如名为“FlexTest”。
3. **集成Blazeds**:将Blazeds解压后的“META-INF”和“WEB-INF”文件夹及内容复制到新创建的Web工程的WebRoot目录下。这样,Web工程就有了Flex所需的相关配置文件和库。
4. **编写Java代码**:在Java代码中,我们需要创建一个实体类,例如`UserBean`,它实现了`Serializable`接口,以便于Java方法的返回值能在Flex和Java之间传输。此外,还需要创建一个供Flex调用的业务逻辑类,如`UserManager`,该类包含一个`getUserList()`方法,返回一个用户列表的示例数据。
5. **配置Remoting服务**:在`WEB-INF/flex/remoting-config.xml`中配置调用Java类的信道。定义一个名为“UserManager”的目的地,指定要调用的Java类`com.rocd.flex.biz.UserManager`。
完成Java部分后,我们需要在Flex端编写代码:
6. **创建Flex工程**:在Flex Builder中创建一个新的Flex项目,确保项目位置设置为MyEclipse的Web工程WebRoot目录,以便Flex应用能访问到Java服务。
7. **配置服务器连接**:在Flex工程中,需要设置服务器技术为J2EE,并指定服务器位置和根URL,这通常是Java Web工程的WebRoot路径和访问URL。
8. **编写Flex代码**:在Flex客户端,通过ActionScript调用Java服务,例如使用`RemoteObject`组件来与Java的`UserManager`服务进行通信,获取用户列表数据。
总结来说,Flex调用Java方法的关键在于使用Blazeds提供的Remoting服务,通过AMF(Action Message Format)通道,实现Flex客户端与Java服务器之间的高效双向通信。在Java端创建可序列化的实体类和业务处理类,同时在Flex端配置好服务器连接,就能实现Flex应用程序对Java服务的调用,从而实现数据的交换和业务逻辑的处理。