第一步:准备工作
1. 新建自已的java包目录JavaLib,将java用到的所有包分类存放其中,flex用于存放的是创建blazeds项目的配制文件.
2. 创建两个文件夹workspace_flex和workspace_java用于分别存放java和flex项目的源文件
第二步:创建javaweb服务端
1. 创建Web Project
请记住自已的项目名为myBlazeDS,这块必须与Flex客户端的名字一样。
2. 给java项目添加必要的jar包:通过创建三个类库包后加入项目中
下面是添加后的显示结果
3. 把javalib中连同文件夹flex一起导入WebRoot\WEB-INF中
4. 把javalib下的web.xml(原blazeds自带的web.xml)导入WebRoot\WEB-INF中覆盖原有的web.xml进行修改
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE web-app PUBLIC "-//Sun Microsystems, Inc.//DTD Web Application 2.3//EN" "http://java.sun.com/dtd/web-app_2_3.dtd">
<web-app>
<!—必须修改,最好与项目同名--à
<display-name>myBlazeDS</display-name>
<description>BlazeDS Application</description>
<!-- Http Flex Session attribute and binding listener support -->
<listener>
<listener-class>flex.messaging.HttpFlexSession</listener-class>
</listener>
<!-- MessageBroker Servlet -->
<servlet>
<servlet-name>MessageBrokerServlet</servlet-name>
<display-name>MessageBrokerServlet</display-name>
<servlet-class>flex.messaging.MessageBrokerServlet</servlet-class>
<init-param>
<param-name>services.configuration.file</param-name>
<param-value>/WEB-INF/flex/services-config.xml</param-value>
</init-param>
<load-on-startup>1</load-on-startup>
</servlet>
<!-- begin rds end rds 如果这里不改无法让blazeds自动生成代码-->
<servlet>
<servlet-name>RDSDispatchServlet</servlet-name>
<display-name>RDSDispatchServlet</display-name>
<servlet-class>flex.rds.server.servlet.FrontEndServlet</servlet-class>
<init-param>
<param-name>useAppserverSecurity</param-name>
<!--须修改下面的权限认证为false -à
<param-value>false</param-value>
</init-param>
<load-on-startup>10</load-on-startup>
</servlet>
<servlet-mapping id="RDS_DISPATCH_MAPPING">
<servlet-name>RDSDispatchServlet</servlet-name>
<url-pattern>/CFIDE/main/ide.cfm</url-pattern>
</servlet-mapping>
<servlet-mapping>
<servlet-name>MessageBrokerServlet</servlet-name>
<url-pattern>/messagebroker/*</url-pattern>
</servlet-mapping>
<welcome-file-list>
<welcome-file>index.html</welcome-file>
<welcome-file>index.htm</welcome-file>
</welcome-file-list>
<!-- for WebSphere deployment, please uncomment -->
<!--
<resource-ref>
<description>Flex Messaging WorkManager</description>
<res-ref-name>wm/MessagingWorkManager</res-ref-name>
<res-type>com.ibm.websphere.asynchbeans.WorkManager</res-type>
<res-auth>Container</res-auth>
<res-sharing-scope>Shareable</res-sharing-scope>
</resource-ref>
-->
</web-app>
5. 创建测试类Test.java
6. 配制remoting-config.xml
<?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>
<destination id="test">
<properties>
<source>Test</source>
</properties>
</destination>
</service>
7. 部署到tomcat服务器
8. 验证是否部署成功
点击Console Application
当看到test时成功
第三步:创建flex客户端
我的机子是在局网里,通过代理上大网的,因为这我痛苦了一个星期,每次在我的本本上通过了,但一到单位的机子就受阻,这是我写这篇文章的本意,请大家不要走太多的弯路,我在这里感谢曾经帮过我的。
1.去掉代理
2.创建自已的flex项目
项目名为myBlazeDS,请与WEB项目同名,项目存放到workspace_flex工作区内,最好把源码与编译后的代码分开。
下面是关天服务端的配制
这块请大家一定要小心根文件夹、根URL(U)、上下文根目录及下面的输出文件夹。
3.下面是我这个星期调试的重点,也是我最大的收获
还记得前面web.xml有一项为什么改为false了吧
4.成功
5.后面就不用写了,blazeds会为我们生成很多代码,非常方便.
为什么要去掉代理,请找到答案的告诉我一下,我们共同进步