我正在使用Spring WebFlow如何在Spring Webflow中驗證集合?
我需要檢查我是否至少有15個類型Practices的集合,如果不是我不能轉換到下一個流程。
我的註冊流量:
<view-state id="practices" view="RegisterPractices" model="labs">
<transition on="add" to="createNewPractice"></transition>
<transition on="next" to="items" validate="true"></transition>
<transition on="back" validate="false" to="owners"></transition>
</view-state>
<subflow-state id="createNewPractice" subflow="addPractice">
<output name="practica" />
<transition on="practiceAdded" to="practices">
<evaluate expression="labs.addPractice(currentEvent.attributes.practice)"></evaluate>
</transition>
<transition on="practiceCancel" to="practices"></transition>
</subflow-state>
的JSP實踐:
<h2>Practices</h2>
<table class="standard-table" cellpadding="0" cellspacing="0">
<thead>
<tr>
<th>Practice</th>
<th>Operation</th>
<th>Action</th>
</tr>
</thead>
<tbody>
<c:forEach items="${ labs.practices }" var="practice">
<tr>
<td>${ practice.practice}</td>
<td><c:choose><c:when test="${ practice.realize == 1}">Realize</c:when><c:otherwise>Deriva</c:otherwise></c:choose></td>
</tr>
</c:forEach>
</tbody>
</table>
<div>
<a href="${flowExecutionUrl}&_eventId=add">Add a New Practice</a>
<a href="${flowExecutionUrl}&_eventId=next">Back</a>
<a href="${flowExecutionUrl}&_eventId=back">Next</a>
</div>
的視圖狀態的做法僅僅是一個的加實踐列表JSP。
我嘗試過使用customValidator,但無法處理MessageBuilder.source(),因爲在該視圖中沒有任何對象。
我與決策狀態嘗試過但我不能表現出像「你必須至少選擇15種做法繼續」
爲什麼你不能在實驗室模型的自定義驗證器中做新的MessageBuilder()。error()。source(「practices」)? –
,因爲我認爲如果我在該視圖狀態(jsp)中有一個字段,則無法指示源。 – grteibo