SpringMVC+BlzeDS+Flex框架实践:HelloWorld篇收收
一、环境配置:
MyEclipse7.0
Felx Builder3.0
JDK1.6
Flex sdk3.2
Tomcat6.0
二、创建JAVA Web工程
在MyEclipse中创建Web Project:TestProject
将相关JAR包拷贝到WEB-INF/lib下,并引入到项目的Build Path中
三、创建FLEX工程
在Flex Builder中创建Flex Project:TestProject
四、配置l
配置JAVA Web工程中WebRoot/l
view plaincopy to clipboardprint?
1.<!--添加模式文件-->
2.<web-app version="2.4"
5.xsi:schemaLocation="java.sun/xml/ns/j2ee
6.java.sun/xml/ns/j2ee/web-app_2_4.xsd">
7.<!--指定欢迎页-->
8.<welcome-file-list>
9.<welcome-file>index.jsp</welcome-file>
10.</welcome-file-list>
11.<!--指定初始化文件-->
12.<context-param>
13.<param-name>contextConfigLocation</param-name>
14.<param-value>
15.l, l
16.</param-value>
17.</context-param>
18.<!--添加-->
19.<listener>
20.<listener-class>
22.</listener-class>
23.</listener>
24.<listener>
25.<listener-class>
27.</listener-class>
28.</listener>
29.<!--添加servlet配置-->
30.<servlet>
31.<servlet-name>flex</servlet-name>
32.<servlet-class>org.springframework.web.servlet.DispatcherServlet
33.</servlet-class>
34.<load-on-startup>1</load-on-startup>
35.</servlet>
36.<servlet-mapping>
37.<servlet-name>flex</servlet-name>
38.<url-pattern>/messagebroker/*</url-pattern>
39.</servlet-mapping>
40.<!--添加session配置-->
41.<session-config>
42.<session-timeout>30</session-timeout>
43.</session-config>
五、创建l、l
在l里配置了初始化配置文件(l、l),因此需要在src目录下创建相应的xml文件(文件名需要与l中设置的配置文件名相同,否则加载时将会报错)。
六、配置l
+ expand sourceview plaincopy to clipboardprint?
1.<beans
2. xmlns="/schema/beans"
3. xmlns:xsi="/2001/XMLSchema-instance"
4. xmlns:flex="/schema/flex"
5. xmlns:aop="/schema/aop"
6. xsi:schemaLocation="/schema/beans
7. /schema/beans/spring-beans-2.0.xsd
8. /schema/aop
9. /schema/aop/spring-aop-2.0.xsd
10. /schema/flex
11. /schema/flex/spring-flex-1.0.xsd">
12. <aop:aspectj-autoproxy />
13. <bean id="timingAspect" class="org.perf4j.log4j.aop.TimingAspect"/>
14.</beans>
七、Spring MVC配置
使用Spring MVC框架,将使用到两个配置文件l、[servlet-name]-l
WEB-INF/[servlet-name]-l, 它被用于配置Web层、视图解析器、控制器、校验器以及其他所有MVC框架中必需的
Bean。[servlet-name]指的是在l部署描述符中定义的Spring dispatcher servlet的名称。
根据在l中定义的名称,我们的配置文件应该为l。在
WEB-INF下创建l。
配置l
1.<?xml version="1.0" encoding="UTF-8"?>
2.<beans xmlns="/schema/beans" xmlns:flex="/schema/flex"
4.xsi:schemaLocation="
5./schema/beans
6./schema/beans/spring-beans-2.5.xsd
7./schema/flex
8./schema/flex/spring-flex-1.0.xsd">
9.</beans>
八、Spring+BlazeDS配置
BlazeDS是一种服务端使用java进行web通信的技术,其可以使开发人员方便地连接到后端分布式数据,推送数据到Flex或AIR应用,为RIA(rich Internet application)提供更好的体验。
Spring集成BlazeDS就是把spring的bean暴露成BlazeDS服务。在Spring BlazeDS Integration之前,BlazeDS要访问spring的bean,需要自己写代码。通过Spring BlazeDS Integration,当Flash来访问服务端时,spring会把请求转发给Flex message broker。同时,我们把spring中的一些bean暴露成Flex remoting service,那么Flash就能调用到spring中暴露成Flex remoting service的bean。
主要的BlazeDS组件是MessageBroker. Flex端传入的http信息将会通过Spring的DispatcherServlet来触发Spring-managed MessageBroker. 也就是说spring用DispatcherServlet来管理BlazeDS的MessageBroker。
配置l
1.<beans
5.xsi:schemaLocation="/schema/beans
6./schema/beans/spring-beans-2.0.xsd
7./schema/aop /schema/aop/spring-a
op-2.0.xsd
8./schema/flex
9./schema/flex/spring-flex-1.0.xsd">
10.<!--使用Spring message Broker代替BlazeDS-->
11.<flex:message-broker>
九、BlazeDS配置
1)下载BlazeDS
下载地址:opensource.adobe/wiki/display/blazeds/Release+Builds
2)解压blazeds.zip,解压其中的blazeds.war,将其中flex目录下的四个xml文件(l、l、l、l)拷贝到
l JAVA工程WebRoot/WEB-INF/flex下(flex目录需要手动创建)
l FLEX工程src/config下(config目录需要手动创建)
3)修改FLEX 工程src/l
1.<?xml version="1.0" encoding="UTF-8"?>
2.<services-config>
3. <services>
4. <service-include file-path="l" />
5. <service-include file-path="l" />
6. <service-include file-path="l" />
7. </services>
8. <security>springmvc常用标签
9. <login-command class="ssaging.security.TomcatLoginCommand"
10.server="Tomcat"/>
11.</security>
12.<channels>
13. <channel-definition
14.id="my-amf"
15.class="mx.messaging.channels.AMFChannel">
16. <endpoint
17.url="/TestWeb/messagebroker/amf"
18.class="dpoints.AMFEndpoint"/>
19. </channel-definition>
20. <channel-definition
21.id="my-secure-amf"
22.class="mx.messaging.channels.SecureAMFChannel">
23.<endpoint url="/TestWeb/messagebroker/amfsecure"
24. class="dpoints.SecureAMFEndpoint"/>
25. <properties>
26.<add-no-cache-headers>false</add-no-cache-headers>
27.</properties>
28. </channel-definition>
29. <channel-definition
30.id="my-polling-amf"
31.class="ssaging.channels.AMFChannel">
32. <endpoint
33.url=" /TestWeb/messagebroker/amfpolling"
34.class="dpoints.AMFEndpoint"/>
35. <properties>
36. <polling-enabled>true</polling-enabled>
37. <polling-interval-seconds>4</polling-interval-seconds>
38. </properties>
39. </channel-definition>
40.</channels>
41.<logging>
42. <target class="ssaging.log.ConsoleTarget" level="Error">
43. <properties>
44. <prefix>[BlazeDS] </prefix>
45. <includeDate>false</includeDate>
46. <includeTime>false</includeTime>
47. <includeLevel>false</includeLevel>
48. <includeCategory>false</includeCategory>
49. </properties>
50. <filters>
51. <pattern>Endpoint.*</pattern>
52. <pattern>Service.*</pattern>
53. <pattern>Configuration</pattern>
54. </filters>
55. </target>
56.</logging>
57.<system>
58. <redeploy><enabled>false</enabled></redeploy>
59. </system>
60.</services-config>
十、框架应用
1)创建UserService.java
搭好框架后,需要在JAVA工程中创建JAVA类,并通过配置文件发布给FLEX应用,以此验证JAVA与FLEX的通信是否成功
在JAVA工程src下创建package:com.admin.service,创建UserService.java
package com.admin.service;
public class UserService {
public String getMessage(){
System.out.println("Excute UserService :"+"hello world!");
return "Hello World";
}
}
2)发布UserService
所有的JAVA类,如果想要发布给FLEX应用,就需要在Application-Flex中添加<flex:remoting-destination>节点,在l中添加如下配置:<bean id="UserService" class="com.hand.admin.service.UserService">
<flex:remoting-destination />
</bean>
3)FLEX引用UserService
对于所有JAVA工程发布的远程服务,如果需要调用,则必须在FLEX工程的配置文件l中进行配置,在l中添加如下配置(这里的source必须和JAVA工程中发布远程服务时提供的bean id一致,否则调用将会失败):
<destination id="UserService">
<properties>
<source>UserService</source>
</properties>
</destination>
4)创建FLEX应用程序
在FLEX工程src下创建modules/common目录,创建l,在其中调用UserService
+ expand sourceview plaincopy to clipboardprint?
1.<?xml version="1.0" encoding="utf-8"?>
2.<mx:Application xmlns:mx="www.adobe/2006/mxml"
3. layout="vertical"
4. horizontalAlign="center"
5. creationComplete="initApp()"
6. fontSize="15">
7.<mx:Script>
8. <!--[CDATA[
9. import mx.rpc.events.ResultEvent;
10. ls.Alert;
11. private function initApp():void{
12. Message();
13. Message.addEventListener(ResultEvent.RESULT, getMessageHandler);
14. }
15. private function getMessageHandler(evt:ResultEvent):void{
16. veEventListener(ResultEvent.RESULT,getMessageHandler);
17. = sult as String;
18. }
19. ]]-->
20.</mx:Script>
21. <mx:RemoteObject id="UserService" destination="UserService"/>
22. <mx:Label text="Welcome" id="initText" fontWeight="bold"/>
23.</mx:Application>
5)修改FLEX主应用
在这里需要特别提一下,由于FLEX工程创建时会默认提供一个主应用程序l,当我们希望主应用程序由我们自己决定时(在本例中主应用程序为moduls/l),需要修改FLEX工程目录下的.actionScriptProperties文件。修改如下配置
<applications>
<application path="l"/>
<application path="modules/l"/>
</applications>
6)修改JAVA主页
修改JAVA工程中的index.jsp
<!-- 设置显示的FLEX首页,URL需要与FLEX工程下的指定首页地址匹配-->
<%response.sendRedirect(path+"/modules/common/Index.html");%>
十一、编译运行
1)编译FLEX工程
选择Project—>Clean—>TestProject
2)拷贝编译目录bin-debug/modules到JAVA工程的WebRoot下
3)在MyEclipse中启动Tomcat服务器
4)运行程序
服务器正常启动后,在浏览器中输入如下地址(其中9090为服务器端口号):
localhost:9090/TestProject/modules/common/Index.html
运行结果如下:
本例到此就实践结束,似乎有点长,下一次将在此基础上添加数据库配置。。。。。。
Spring MVC+BlazeDS+Flex框架实践:Database篇收藏
在blog.csdn/meteorlWJ/archive/2009/09/12/4545858.aspx中实践了此框架的基础搭建,本次的实践将在此基础上引入hibernate配置,并创建FLEX应用实现数据库操作。
一、环境配置
MyEclipse 7.0
Flex Builder 3.0
Tomcat 6.0
JDK1.6
Flex sdk 3.2
Oracle 10g :XE
二、Hibernate+Proxool配置
Hibernate管理JAVA类到数据库表的映射,并提供数据查询和获取的方法。Hibernate对JDBC进行了轻量级的对象封装,完成了数据持久化的重任。
这是一个Java SQL Driver驱动程序,提供了对你选择的其它类型的驱动程序的连接池封装。Proxool提供一个健壮、易用的连接池,最为关键的是这个连接池提供监控的功能,方便易用,便于发现连接泄漏的情况。
1)连接池配置:l
在JAVA工程src下创建l,添加如下配置:
其中参数详解如下:
alias :数据源别名
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。
发表评论