1
내 페이지에서 "저장"을 클릭하면 유효성을 도입 한 후에 아무 반응이 없습니다. 페이지에 "저장"및 "취소"가 있습니다. "immediate = true"를 단추를 취소하기 위해 넣으므로 유효성 검증이 수행되지 않고 가정 한대로 이전보기로 돌아갑니다. 저장을 클릭하면 유효성 검사가 수행되고 오류가 올바르게 표시되지만 데이터를 처리하고 이전 페이지로 돌아가는 대신 올바른 입력을 입력하면 (유효성 검사에 오류가 발생하지 않음) 발생합니다 ...효과가없는 빈 검증
나는 무엇인가 놓친다? 여기
일부 코드 조각 :
는보기 :
는<f:metadata>
<f:viewParam name="mode" value="#{roomDetailController.model.mode}"/>
<f:viewParam name="dbId" value="#{roomDetailController.model.dbId}"/>
<f:event listener="#{roomDetailController.processCommand}" type="preRenderView"/>
</f:metadata>
...
<tr>
<td>
<h:outputLabel value="#{msg.roomFormFieldRoomName}:"/>
</td>
<td>
<h:inputText id="roomName" value="#{detailModel.afterObject.roomName}" disabled="#{detailModel.mode == detailModel.viewMode}">
<f:validateBean/>
</h:inputText>
<h:message for="roomName" style="color:red"/><br/>
</td>
</tr>
<tr>
<td>
<h:outputLabel value="#{msg.roomFormFieldRoomIPs}:"/>
</td>
<td>
<h:inputText id="roomIPs" value="#{detailModel.afterObject.roomIPs}" disabled="#{detailModel.mode == detailModel.viewMode}">
<f:validateBean/>
</h:inputText>
<h:message for="roomIPs" style="color:red"/><br/>
</td>
</tr>
...
<!-- SUBMIT BUTTON -->
<h:commandButton
styleClass = "waiButton"
value = "#{commonButtonSubmit}"
action = "#{detailController.submitAction()}"
rendered = "#{detailModel.mode != detailModel.viewMode}"
/>
<!-- CANCEL BUTTON -->
<h:commandButton
styleClass = "waiButton"
value = "#{commonButtonCancel}"
action = "#{detailController.cancelAction()}"
immediate = "true"
rendered = "#{detailModel.mode == detailModel.cancelMode or detailModel.mode == detailModel.editMode or detailModel.mode == detailModel.multiEditMode or detailModel.mode == detailModel.createMode}"
/>
...
는 컨트롤러 :
...
// Action: "submit" clicked
public String submitAction()
{
detailModel.setCommand(DetailModel.Command.SUBMIT);
return null;
}
// Action: "cancel" clicked
public String cancelAction()
{
if (detailModel.getEditMode().equals(detailModel.getMode()))
{
detailModel.setMode(detailModel.getViewMode());
return null;
}
else
{
// Multi Edit Mode
return appendUrlParameter(getListViewName(), FACES_REDIRECT_TRUE);
}
}
...
당신이 좀 더 정보가 필요하면 알려주세요 ...
죄송합니다. 문제는 유효성 검사와 아무 관련이 없습니다. – Francesco