При использовании Spring Web Flow 1, как мне добавить объект в список в компоненте?

StackOverflow https://stackoverflow.com/questions/1001084

  •  05-07-2019
  •  | 
  •  

Вопрос

У меня есть веб-поток, где мне нужно записывать данные на одном из экранов.

Эти данные хранятся в объекте, который будет храниться в списке в компоненте.

При отправке страницы я хочу иметь возможность создать объект и добавить его в список в компоненте.

Возможно ли это?

Спасибо

Это было полезно?

Решение 2

В конце концов мне удалось заставить его работать со следующими потоками.

Я создал вспомогательный компонент для хранения функции добавления в список, хранящийся в компоненте формы.

<view-state id="page2" view="page2">
    <transition on="save" to="addToList">
        <action bean="form" method="bindAndValidate"/>
    </transition>
    <transition on="back" to="page1">
        <action bean="formAction" method="bindAndValidate"/>
    </transition>
    <transition on="next" to="page3">
        <action bean="formAction" method="bindAndValidate"/>
    </transition>
    </view-state>

    <action-state id="addToList">
        <bean-action bean="helperbean" method="addToList">
            <method-arguments>
                <argument expression="conversationScope.form"/>
        </method-arguments>
        </bean-action>
        <transition on="success" to="page2"/>
    </action-state>

Затем он снова отображает исходную страницу

Другие советы

Тебе нужно сделать пару вещей:

  1. Поместите объект в область потока (или добавьте дополнительное поле в существующий объект, например, в вашу форму), чтобы задать фиксированный путь привязки к объекту, который вы хотите отредактировать.Если вы не сделаете этого, вы не сможете воспользоваться преимуществами привязки данных Spring.

  2. Напишите метод в вашем FormAction, чтобы поместить этот объект в ваш список, и установите этот метод для запуска при переходе, который следует при отправке текущей страницы.Этот метод может при необходимости очистить ресурсы уровня flowscope, используемые в (1).

Редактировать В документации Webflow есть хорошие примеры того, как выполнять действия над переходами.Для получения Webflow версии 2 ознакомьтесь Выполнение переходов между видами и Выполнение действий.Для версии 1 см. Определение потока.

Я бы сохранил компонент (и список) в сеансе.

Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top