基于blazeDS的flex4与spring的程序实例步骤和Flex中的Session管理.docx_第1页
基于blazeDS的flex4与spring的程序实例步骤和Flex中的Session管理.docx_第2页
基于blazeDS的flex4与spring的程序实例步骤和Flex中的Session管理.docx_第3页
基于blazeDS的flex4与spring的程序实例步骤和Flex中的Session管理.docx_第4页
基于blazeDS的flex4与spring的程序实例步骤和Flex中的Session管理.docx_第5页
已阅读5页,还剩14页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

基于blazeDS的flex4与spring的程序实例步骤和Flex中的Session管理Adobe Flash Builder 4 简体中文正式版 Windows版点击下载:/5134151 Adobe Flash Builder 4 简体中文正式版 Mac版点击下载 :/5134152Adobe 在线课堂:/zx/index.html Adobe平台技术峰会课程视频:/ 环境: jdk1.6 j2ee1.5 spring2.5.6 blazeDS3.3 tomcat6.0 flex4 myeclipse8.5 flashBuilder4步骤:一、 启动好blazeDS(即启动tomcat,在tomcat/webapps目录下产生一个blazeds文件夹(三个war包产生一个blazeds文件夹); 在myeclipse8.5新建一个web Project工程,工程名为webSpring; 把此工程加入blazeDS支持(即用blazeds下的WEB-INF文件夹替换掉web工程下的WEB-INF文件夹); 加入spring支持(把spring相关的jar包拷贝到webSpring/WebRoot/WEB-INF/lib目录下即可)。二、 1. 在javaWeb工程webSpring的str目录下分别新建一下两个包: cn.xuediit.myFactory、cn.xuediit.myService; 2. 在cn.xuediit.myFctory包下新建两个类:FlexFactoryImpl.java和SpringFactoryInstance.java (1). FlexFactoryImpl.java: package cn.xuediit.myFactory; import mons.logging.Log; import mons.logging.LogFactory; import flex.messaging.FactoryInstance; import flex.messaging.FlexFactory; import flex.messaging.config.ConfigMap; public class FlexFactoryImpl implements FlexFactory private Log log = LogFactory.getLog(getClass(); /*override interface method*/ public void initialize(String id, ConfigMap configMap) System.out.println(1-flex工厂实现类重写的方法initialize); /*override interface method*/ public FactoryInstance createFactoryInstance(String id, ConfigMap properties) System.out.println(2-flex工厂实现类重写的方法createFactoryInstance); (Create FactoryInstance.); SpringFactoryInstance instance = new SpringFactoryInstance(this, id, properties); instance.setSource(properties.getPropertyAsString(SOURCE, instance.getId(); return instance; /*override interface method*/ public Object lookup(FactoryInstance instanceInfo) System.out.println(4-flex工厂实现类重写的方法lookup); (Lookup service object.); return instanceInfo.lookup(); (2).SpringFactoryInstance.java package cn.xuediit.myFactory; import mons.logging.Log; import mons.logging.LogFactory; import org.springframework.beans.BeansException; import org.springframework.beans.factory.NoSuchBeanDefinitionException; import org.springframework.context.ApplicationContext; import org.springframework.web.context.support.WebApplicationContextUtils; import flex.messaging.FactoryInstance; import flex.messaging.FlexContext; import flex.messaging.FlexFactory; import flex.messaging.config.ConfigMap; import flex.messaging.services.ServiceException; public class SpringFactoryInstance extends FactoryInstance private Log log = LogFactory.getLog(getClass(); SpringFactoryInstance(FlexFactory factory, String id, ConfigMap properties) super(factory, id, properties); public Object lookup() System.out.println(3-spring工厂类的方法lookup); ApplicationContext appContext = WebApplicationContextUtils.getRequiredWebApplicationContext(FlexContext.getServletConfig().getServletContext(); String beanName = getSource(); try (Lookup bean from Spring ApplicationContext: + beanName); return appContext.getBean(beanName); catch (NoSuchBeanDefinitionException nex) ServiceException e = new ServiceException(); String msg = Spring service named + beanName + does not exist.; e.setMessage(msg); e.setRootCause(nex); e.setDetails(msg); e.setCode(Server.Processing); throw e; catch (BeansException bex) ServiceException e = new ServiceException(); String msg = Unable to create Spring service named + beanName + .; e.setMessage(msg); e.setRootCause(bex); e.setDetails(msg); e.setCode(Server.Processing); throw e; catch (Exception ex) ServiceException e = new ServiceException(); String msg = Unexpected exception when trying to create Spring service named + beanName + .; e.setMessage(msg); e.setRootCause(ex); e.setDetails(msg); e.setCode(Server.Processing); throw e; 3. 在cn.xuediit.myService包下新建两个类:FService.java和FServicesImpl.java (1). FService.java package cn.xuediit.myService; public interface FService public String sayHello(String name); (2). FServicesImpl.java package cn.xuediit.myService; public class FServicesImpl implements FService public String sayHello(String name) System.out.println(5-服务层实现类(本质上的与flex交互的类)); return 我是服务层的服务实现类= + name; 三、 1、 在javaWeb工程webSpring下,在文件webSpring/WebRoot/WEB-INF/web.xml的标签下添加子节点: org.springframework.web.context.ContextLoaderListener 2、 在javaWeb工程webSpring下,在webSpring/WebRoot/WEB-INF目录下新建一个文件:applicationContext.xml 四、 1、 在javaWeb工程webSpring下,在WebRoot/WEB-INF/flex/remoting-config.xml文件中的标签下添加: flexFactoryImplID fServiceImplBeanID application 2、 在javaWeb工程webSpring下,在WebRoot/WEB-INF/flex/services-config.xml文件中的标签下添加: 五、 给此javaWeb工程添加tomcat支持,启动tomcat(这个容易就不说了)。六、 在flashBuilder下新建一个基于blazeDS的flex项目(以webSpring为后台工程),工程名为webFb; webFb.mxml: 七、 重启tomcat,运行flex程序,如弹出:我是服务层的服务实现类=(输入框的内容),则成功。 Flex中的Session管理 Flex中实现session的一个类是FlexContext类,他将session保存在服务端。 新建一个java类FlexSession.java,里面写了各种存贮、获取、清除Session的方法:1. packagecom.ldfsoft.util;2. 3. importflex.messaging.FlexContext;4. 5. publicclassFlexSession6. 7. /*8. *保存Session9. *paramname10. *paramvalue11. */12. publicvoidsetSession(Stringname,Stringvalue)13. FlexContext.getFlexSession().setAttribute(name,value);14. 15. 16. /*17. *获取Session18. */19. publicStringgetSession(Stringname)20. Stringvalue=(String)FlexContext.getFlexSession().getAttribute(name);21. returnvalue;22. 23. /*24. *清除Session25. *paramname26. */27. publicvoidremoveSession(Stringname)28. FlexContext.getFlexSession().removeAttribute(name);29. 30. 31. 然后将此类在flex配置文件中配置一下,这个就不说了。 新建一个mxml文件Login.mxml,代码如下所示:1. 2. 5. 6. 7. 44. 45. 46. 47. 48. 49. 50. 51. 52. 53. 54. 55. 56. 57. 58. 59. 这个文件是一个登陆界面,登陆中将用户信息保存在服务端的Session里。 接着新建一个mxml文件welcome.mxml,代码如下所示:1. 2. 5. 6. 42. 43.

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论