Spring Web Folw配置

配置Spring Web Flow需要在Spring的上下文中配置一些关于流程的Bean来处理流程的请求并执行。



让后开始配置吧:

  1. 装配流程执行器

        
            
            
        
    
  1. 配置流程注册表

流程注册表是加载流程定义并通过执行器执行他们。


        
    
  1. 处理流程请求
    DispatcherServlet一般会直接将请求分发给控制器,所以如果我们想要使用Spring Web Folw就需要一个Mapping将请求映射到SWF.

        
            
                
            
        
    

请求重定向给SWF后我们需要的是处理请求,
需要使用FlowHandlerAdapter进行请求处理。



    

组件

状态类型 它是用来做什么的
视图(视图) 暂停流程并邀请用户参与流程
行为(动作) 行为状态,流程逻辑发生的地方
决策(决定) 基于流程数据的评估查询查询结果确定流程方向
子流程(子流) 在当前的流程上下文中启动一个新的流程
结束(完) 流程的最后一站
流程配置例子

    
    
    
  
        
        
        
    

Spring Web Flow 应用

我们将使用一个简单的支付的例子,来一步步的配值Spring Web Flow,
我们首先要理清楚整个支付的流程

开始 --> 特定用户 --> 创建订单 --> 支付 --> 
保存订单 --> 感谢用户 -->结束

这个简化的支付流程是一个线性的过程,定义起来还是什么容易。

首先我们默认已经搭建好了Spring SpringMVC项目
现在开始构建项目:

  1. 首先要导入SWF需要的jar

            org.springframework.webflow
            spring-webflow
            2.4.5.RELEASE
        
  1. 配置springmvc.xml文件

基于springmvc项目我们需要,在springmvc.xml配值文件中配值拦截映射器:


        
        
            
            
        

配置流的处理器适配器


        
    
  1. 创建并配置webflow-config.xml


    
    
    
    
    
        
        
    
    
    
    
    
        
    

  1. 创建shopping.xml用来定义流程


    

    
    
        
        
    
    
        
        
    
    
        
        
    
    
    

其中on属性表示触发的事件,to属性是当触发该事件后转向的状态。首先转向viewCart状态,当点击submit后转向viewOrder状态,在该状态下点击confirm则会转移到viewConfirmed状态,依次同理。这里转向的页面是jsp页面,

view-state的属性id与jsp文件的名字相对应。

例如id viewCart 对应viewCart.jsp页面






Cart Application


    

View Cart

Submit

上面需要说明的是Spring Web Flow为视图的用户提供了一个flowExecutionUrl变量,它包含了流程的URL,结束链接将一个”_eventId”参数关联到URL上,以便回到Web流程时触发该参数值的事件,直到流程结束。

再例如:






Cart Application


    

Order Confirmed

Confirm

你可能感兴趣的:(Spring Web Folw配置)