Spring Web Flow. Hello World! Часть 4. Настройка приложения

января
05
2012
Метки: spring spring web flow

Содержание

В этой статье будет показано как настроить проект для дальнейшего использования Spring Web Flow.

Конфигурационный файл сервлета SWFHelloWorld (/WEB-INF/SWFHelloWorld-servlet.xml) выглядит следующим образом:


<?xml version="1.0" encoding="UTF-8"?>
<beans xmlns="http://www.springframework.org/schema/beans"
       xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
       xmlns:flow="http://www.springframework.org/schema/webflow-config"
       xmlns:p="http://www.springframework.org/schema/p"
       xmlns:context="http://www.springframework.org/schema/context"
       xsi:schemaLocation="http://www.springframework.org/schema/webflow-config 
           http://www.springframework.org/schema/webflow-config/spring-webflow-config-2.0.xsd
           http://www.springframework.org/schema/beans 
           http://www.springframework.org/schema/beans/spring-beans-3.0.xsd
           http://www.springframework.org/schema/context 
           http://www.springframework.org/schema/context/spring-context-3.0.xsd">
       
    <context:component-scan base-package="com.seostella.swfhelloworld" />

    <flow:flow-executor id="flowExecutor" flow-registry="flowRegistry" />

    <flow:flow-registry id="flowRegistry" 
                        flow-builder-services="flowBuilderServices"
                        base-path="/WEB-INF/flows">
        <flow:flow-location-pattern value="/**/*-flow.xml" />
    </flow:flow-registry>

    <flow:flow-builder-services id="flowBuilderServices" 
                                view-factory-creator="mvcViewFactoryCreator"/>

    <bean id="mvcViewFactoryCreator" 
              class="org.springframework.webflow.mvc.builder.MvcViewFactoryCreator">
        <property name="defaultViewSuffix" value=".jspx" />   
    </bean>

    <bean class="org.springframework.webflow.mvc.servlet.FlowHandlerMapping">
        <property name="flowRegistry" ref="flowRegistry" />
    </bean>

    <bean class="org.springframework.webflow.mvc.servlet.FlowHandlerAdapter">
        <property name="flowExecutor" ref="flowExecutor" />
    </bean>
</beans>

Эта статья не ставит своей задачей полностью раскрыть тему использования Spring Web Flow. Поэтому разберем только 2 фрагмента из этой конфигурации. Первый:


    ...
    <context:component-scan base-package="com.seostella.swfhelloworld" />
    ...

com.seostella.swfhelloworld - пакет, в котором будет происходить поиск на компоненты приложения и, собственно, обработчик действий. В данном примере в пакете com.seostella.swfhelloworld не будет исходников, но в будущем эта конструкция нам еще понадобится.

Следующим кодом определяем, что наши списки действий будут лежать в поддиректории директории /WEB-INF/flows и имя файла будет оканчиваться на -flow.xml. Например, /WEB-INF/flows/signin/signin-flow.xml.


    ...
    <flow:flow-registry id="flowRegistry" 
                        flow-builder-services="flowBuilderServices"
                        base-path="/WEB-INF/flows">
        <flow:flow-location-pattern value="/**/*-flow.xml" />
    </flow:flow-registry>
    ...

В завершающей части статьи представлено получившееся веб-приложение...

< Spring Web Flow. Hello World! Часть 3. Настройка SWF Spring Web Flow. Hello World! Часть 5 >

Напишите первое сообщение!

Вы должны войти под своим аккаунтом чтобы оставлять комментарии