spring webflow2 - нет реакции после отправки

У меня возникла странная проблема в Spring Webflow 2: внутри моего потока есть три состояния: 1) форма для заполнения 2) страница подтверждения 3) состояние действия для сохранения модели

Первое состояние работает отлично, без проблем. Второе состояние не отвечает ни на одну кнопку отправки. полностью мертв, никакой реакции ни на стороне клиента, ни на стороне сервера. У вас есть идеи, почему?

здесь мое определение потока:

<view-state id="step1" view="profile/step1_profile" model="profile">
<on-render>
    <evaluate expression="profileReferenceData.getNationalities(flowRequestContext)"/>
    <evaluate expression="profileReferenceData.getRaces(flowRequestContext)"/>
    <evaluate expression="profileReferenceData.getReligions(flowRequestContext)"/>
</on-render>
    <transition on="submit_step_1" to="step2">
    </transition>
</view-state>

<view-state id="step2" view="profile/step2_confirmData" model="profile">
    <!--            <secured attributes="ROLE_USER" /> -->
    <transition on="submit_step_2" to="step3"/>
    <transition on="review" to="step1" />
</view-state>

<!--  step3. Save data  -->
 <action-state id="step3"> 
     <evaluate expression="profileServiceImpl.createProfileForWebFlow(profile)" /> 
     <transition on="ok" to="done" /> 
     <transition on="error" to="notDone" /> 
 </action-state> 

А вот и второй шаг .jsp

<tr>
    <td><spring:message code="label.nationality"/>:</td>
    <td><c:out value="${profile.personalData.nationality}"/></td>
</tr>   
<tr>
    <td><spring:message code="label.race"/>:</td>
    <td><c:out value="${profile.personalData.race}"/>
</tr>   
<tr>
    <td><spring:message code="label.religion"/>:</td>
    <td><c:out value="${profile.personalData.religion}"/>
<tr>
    <td><input type="submit" value="Submit" name="_eventId_submit_step_2" /></td>
    <td><input type="submit" name="_eventId_review" value="Review"/></td>
    <td><input type="submit" name="_eventId_cancel" value="Cancel"/></td>
</tr>

большое спасибо


person MarcoAbi    schedule 28.05.2012    source источник


Ответы (1)


Я хотел бы посмотреть, как вы объявляете форму... в любом случае, проверьте, добавлены ли атрибуты действия и метода в тег формы. Например:

<form id="formId" action="${flowExecutionUrl}" method="post">
...
</form>

или в вашем случае:

<form:form id="formId" action="${flowExecutionUrl}" method="post" modelAttribute="profile">
...
</form:form>

Надеюсь это поможет.

person txedo    schedule 06.06.2012