`
kim_miao
  • 浏览: 190647 次
  • 性别: Icon_minigender_1
  • 来自: 杭州
社区版块
存档分类
最新评论

Spring MVC与Web Flow的集成

阅读更多
     要在Spring MVC环境内部署用于执行的流,需要定义一个FlowController,它是一个特殊的org.springframework.web.servlet.mvc.Controller控制器。FlowController作为Spring MVC和Spring Web Flow 之间的适配器,将所有来自页面的HTTP 请求路由到FlowController,然后由它移交给Web Flow 的流引擎FlowExecutionManager。Web Flow引擎再引用FlowRegistry创建相应流执行器FlowExcution。FlowRegistry也称为流定义字典,系统中所有流的定义文件必须在流定义字典中注册。Web Flow引擎会根据流定义的文件名(不包含文件扩展名)在流定义字典中检索从而生成相应的流执行器(FlowExcution)。FlowExecution会根据自己的流定义文件(FlowName.xml)中定义的各种状态执行相应的业务逻辑,也就开始了一个具体流(FlowInstance)的执行。                                         
图 1-1 Spring MVC与Web Flow的集成图

利用Spring容器提供的依赖注入功能,它们在applicationContext.xml的配置如下:
<!—配置流执行器—>
<flow: executor id="flowExecutor" registry-ref="flowRegistry" />
<!—注册流控制器-->
<bean name="/startFlow.do"		 class="org.springframework.webflow.executor.mvc.FlowController">
	       	<property name="flowExecutor" ref="flowExecutor" />
</bean>
<!—在流定义字典中注册流定义文件-->
<bean id="flowRegistry"	class="org.springframework.webflow.engine.builder.xml.
XmlFlowRegistryFactoryBean">
	<property name="flowLocations">
			<list>
              <!—配置系统自定义的流文件-->
				<value>/WEB-INF/flows/flowName1.xml</value>
                 ...
             	<value>/WEB-INF/flows/flowNameN.xml</value>
			</list>
	</property>
</bean>
当然,也可以采用通配符的配置方式,这种方式更简单明了,这样系统中所有在/WEB-INF/flows目录下的流定义文件都被注册到了流字典中。
<bean id="flowRegistry"	class="org.springframework.webflow.engine.builder.xml.
XmlFlowRegistryFactoryBean">
   <property name="flowLocations" value="/WEB-INF/flows/*.xml "/>
</bean>
  • 大小: 5.1 KB
1
2
分享到:
评论
2 楼 tomcatlee 2010-09-23  
请教,如何配置rest风格的流程处理?
比如:
http://localhost/app/order/edit/19
我要启动编辑id为19的order的流程。
1 楼 sjbrising 2010-04-09  
看不懂,头疼~

相关推荐

    深入解析Spring+MVC与Web+Flow.pdf

    书中包含了一些开发良好设计和解耦的Web 应用程序的最佳实践,介绍了Spring 框架中的Spring MVC 和Spring Web Flow,以及着重介绍利用Spring 框架和Spring MVC 编写Web 应用程序的最佳方法。《深入解析Spring MVCgn ...

    深入解析Spring MVC与Web Flow

    Web Flow则是一个独立于Spring的库,但可以与Spring MVC很好地集成。它专注于管理用户的工作流和状态,提供了一种声明式的方式来定义和执行用户交互流程。 6. **Web Flow的流程定义**:流程定义是Web Flow的核心,...

    Spring mvc with Web Flow

    ### Spring MVC 与 Web Flow 技术详解 #### 引言 随着软件开发技术的不断发展,Web 应用程序的需求日益复杂。为了更好地管理和控制这些应用程序的流程,Spring 框架提供了强大的支持。其中,Spring MVC 和 Spring ...

    Expert Spring MVC and Web Flow

    ### Expert Spring MVC 和 Web Flow:深入理解与应用 #### 一、Spring MVC 概述 Spring MVC 是 Spring Framework 的一个重要模块,它实现了 Model-View-Controller(MVC)设计模式,用于构建高度可维护和可扩展的...

    Expert Spring MVC and Web Flow.rar

    书中会解释Web Flow的概念,包括定义状态、转换、事件处理,以及如何与Spring MVC集成。 在阅读《Expert Spring MVC and Web Flow》这本书时,你将学习到以下核心知识点: 1. **Spring MVC基础**:包括Spring MVC...

    spring-mvc-webflow

    它将Spring MVC的功能与一种称为Webflow的流程管理概念相结合,帮助开发者更好地组织和控制用户会话的生命周期。在这个教程中,我们将深入探讨Spring MVC Webflow的核心概念、优势以及如何在实际项目中使用它。 1. ...

    使用sitemesh替换tiles2,spring mvc+spring web flow+sitemsh

    标题中的“使用sitemesh替换tiles2,spring mvc+spring web flow+sitemsh”指出了一种在Spring MVC和Spring Web Flow项目中用Sitemesh替代Tiles2作为页面布局工具的技术实践。Sitemesh和Tiles2都是用于创建可重用的...

    spring webflow 官方中文版权威指南PDF

    8. **集成Spring MVC**:WebFlow如何与Spring MVC无缝集成,利用Spring的依赖注入和AOP特性。 9. **事件驱动**:WebFlow基于事件的架构,如何触发和响应用户操作,以及如何定义自定义事件。 10. **国际化的支持**...

    Spring Web Flow 2简化页面流的开发,结合Spring MVC更俊,Spirng Security 3添加安全机制

    Spring Web Flow 2 是该框架的一个版本,它与Spring MVC紧密集成,提供了一种优雅的方式来组织和控制用户会话的生命周期。 在Spring Web Flow 2中,一个页面流定义了一个特定的业务流程,包括一系列的视图状态...

    Pro.Spring.MVC.With.Web.Flow.英文版+源码

    总而言之,《Pro.Spring.MVC.With.Web.Flow》是学习和掌握Spring MVC与Web Flow的宝贵资源,对于想要提升自己在企业级Web开发领域的技能的开发者来说,这是一本不可多得的参考书籍。通过深入研究书中的内容和源码,...

    spring web flow reference 2.4.0

    - **Spring MVC Flash Scope集成**:增强了与Spring MVC框架的集成,允许在Web Flow和Spring MVC之间共享临时数据。 - **部分JSR-303 Bean验证**:实现了对JSR-303 Bean验证规范的部分支持,提高了数据验证的能力。 ...

    Spring Web Flow 介绍.rar

    - **与Spring MVC的集成**:Spring Web Flow 可以无缝集成到Spring MVC应用中,利用Spring的依赖注入和AOP特性。 - **第三方库集成**:Spring Web Flow 支持与其他库如Spring Security、Hibernate等的集成,方便...

    spring-webflow2.3.0源码

    Spring Webflow可以无缝集成Spring MVC,将流程管理与控制器相结合。通过`WebflowConfigurer`配置,可以在Spring MVC环境中使用`FlowHandlerAdapter`和`FlowHandlerMapping`进行适配和映射。 总结,Spring Webflow ...

Global site tag (gtag.js) - Google Analytics