0
대상 컨트롤러를 공격하지 속성 :봄 검증은 내가 파일을 업로드 제출 양식을이 방법
@RequestMapping(value = "/uploadFile",method= RequestMethod.POST)
public ModelAndView uploadFile(@ModelAttribute(value = "assayAssessmentsRequestBean")AssayAssessmentsRequestBean assayAssessmentsRequestBean,HttpSession session,BindingResult result) throws PanDaApplicationException {
//mycode
}
일이 무엇 :
<form id="uploadForm" action="#" method="POST" enctype="multipart/form-data">
<div class="instruction popup_inst">
<span class="popup_logo">[@spring.message "pandaLogo"/]</span>
<div class="float_right">
<input type="button" id="cancelBtn" class="btn" onclick="closePopupFunctionality();" value="[@spring.message "cancelButton"/]" />
<input class="btn" type="submit" id="submit" onclick="validateFileInput();" value="[@spring.message "uploadButton"/]" />
</div>
</div>
<span class="popup_title">[@spring.message "uploadFile"/]</span>
<div class="popup_container">
[@spring.bind "assayAssessmentsRequestBean"/]
[@spring.formInput path="assayAssessmentsRequestBean.designabilityFile.file" fieldType="file" attributes="title='path' class='upload' accept='.txt,.csv,.zip'" /]
[@spring.formHiddenInput path="assayAssessmentsRequestBean.dateOfAssessment" attributes="" /]
[@spring.formHiddenInput path="assayAssessmentsRequestBean.id" attributes="" /]
[@spring.showErrors " " "error" /]
</div>
<input id="uploadfile" type="hidden" value="${uploadfile}"/>
</form>
이 양식은 컨트롤러에서 다음과 같은 방법 안타 이 메서드는 호출되지 않으며 BindingResult 특성을 제거하면 메서드가 호출됩니다.
나는 BeanPropertyBindingResult 속성을 가지고있는 또 다른 접근법을 시도하고 대상 객체를 검증하여 전달하지만 작동하지만 결코 오류를 반환하지 않습니다.
@RequestMapping(value = "/uploadFile",method= RequestMethod.POST)
public ModelAndView uploadFile(@ModelAttribute(value = "assayAssessmentsRequestBean")AssayAssessmentsRequestBean assayAssessmentsRequestBean,HttpSession session/*,BindingResult result*/) throws PanDaApplicationException {
logger.info(assayAssessmentsRequestBean.getDesignabilityFile().getFile());
BindingResult result=new BeanPropertyBindingResult(assayAssessmentsRequestBean.getDesignabilityFile(),"designabilityFile");
감사합니다 :-) –
내가 실제로 당신에게 말한 것을 시도 할 것입니다. 왜냐하면 그 이유는 실제로 존재했기 때문입니다. "_think BindingResult가 유효성이 검사 된 객체 바로 다음에 와야 함"감사 :-) –
"think BindingResult는 유효성이 검사 된 개체 바로 다음에 있어야하며 "BindingResult **는 유효성 검사를 마친 개체 뒤에 즉시 따라야합니다 **"로 바꿉니다. (그리고이 게시물 그냥 내 정신을 구 했어요!) – chrsalln