Создайте новый объект внутри Spring SubFlow - PullRequest
0 голосов
/ 26 октября 2011

У меня есть MainFlow.xml, который вызывает SubFlow.xml, и при этом основной поток передает объект с именем orderForm в subFlow. Затем subFlow использует, просто указав входной тег в начале потока (см. Ниже)

<input name="orderForm" />

В основном потоке я создаю экземпляр этого объекта с помощью кода ниже

<var name="orderForm" class="abc.xyz.pqr.mvc.order.OrderForm"/>

Теперь, причина, по которой у меня есть подпоток, заключается в том, что мне нужно повторно использовать состояния представления и состояния решений в этом подпотоке в нескольких сценариях. Проблема, с которой я сталкиваюсь сейчас, заключается в том, что если я не войду в подпоток из основного потока, объект orderForm всегда будет нулевым.

Как правило, я хотел бы получить решение, позволяющее мне проверить, имеет ли значение orderForm значение null в начале потока, и, если оно есть, создать новый момент времени объекта. Я не могу сделать это так же, как это делает основной поток (см. Выше), потому что тогда каждый раз, когда я вхожу в подпоток из основного потока, у меня будет новый объект orderForm.

Пожалуйста, сообщите. И так как я новичок в Spring, пожалуйста, будьте как можно точнее. Спасибо

1 Ответ

1 голос
/ 23 января 2012

Вы можете сделать что-то вроде этого ...

<decision-state id="checkIfOrderFormNull">
    <if test="orderForm == null" then="createOrderForm" else="secondStep"/>
</decision-state>

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

используйте "createOrderForm" для создания нового экземпляра формы ...

...