input type=file 객체의 validate 방법
- 작성자 :
- 정*주
- 작성일 :
- 2012-08-08 15:58:49
- 조회수 :
- 1,871
- 구분 :
- 실행환경
- 진행상태 :
- 완료
Q
input type="file" 객체의 validation 처리방법에 관해 문의드립니다.
필수컬럼 처리를 위해 required로 설정을 하면 등록시에는 상관없지만
게시물 수정때에도 validation에 걸리게 되는 문제가 발생하여
validwhen으로 처리를 시도했습니다.
이렇게 처리를 했을때 우선 client쪽 처리에서 문제가 발생하였습니다.
validator-rules.xml에 validateValidWhen 메소드가 구현되어있지 않아서이고
샘플을 찾아봐도 참고할만한 곳이 없어서 자바스크립트 처리를 하지 못하였습니다.
그래서 server단에서 처리를 하려고 했는데
<field property="file_1" depends="validwhen">
<arg0 key="첨부이미지" resource="false"/>
<var>
<var-name>test</var-name>
<var-value>(file_path == null) or (*this* != null))</var-value>
</var>
</field>
이런식으로 처리한후 file의 값을 찍어보니 org.springframework.web.multipart.commons.CommonsMultipartFile@170b55b
이렇게 나와서 *this* != null 조건에 걸리게 되는거 같습니다.
그래서 file을 선택하던 안하던간에 모두 통과가 되어버리는데
어떻게 처리하면 될지 알려주세요.
validator 문서를 찾아보려고 https://springmodules.dev.java.net/
이 사이트도 방문했는데 없어졌는지 열리지 않네요...
필수컬럼 처리를 위해 required로 설정을 하면 등록시에는 상관없지만
게시물 수정때에도 validation에 걸리게 되는 문제가 발생하여
validwhen으로 처리를 시도했습니다.
이렇게 처리를 했을때 우선 client쪽 처리에서 문제가 발생하였습니다.
validator-rules.xml에 validateValidWhen 메소드가 구현되어있지 않아서이고
샘플을 찾아봐도 참고할만한 곳이 없어서 자바스크립트 처리를 하지 못하였습니다.
그래서 server단에서 처리를 하려고 했는데
<field property="file_1" depends="validwhen">
<arg0 key="첨부이미지" resource="false"/>
<var>
<var-name>test</var-name>
<var-value>(file_path == null) or (*this* != null))</var-value>
</var>
</field>
이런식으로 처리한후 file의 값을 찍어보니 org.springframework.web.multipart.commons.CommonsMultipartFile@170b55b
이렇게 나와서 *this* != null 조건에 걸리게 되는거 같습니다.
그래서 file을 선택하던 안하던간에 모두 통과가 되어버리는데
어떻게 처리하면 될지 알려주세요.
validator 문서를 찾아보려고 https://springmodules.dev.java.net/
이 사이트도 방문했는데 없어졌는지 열리지 않네요...
A
안녕하세요.. 정동주님..
말씀하신 것 처럼.. 서버 사이드 처리는 적용된 multipart resolver에 따라.. 객체가 넘어오기 때문에.. 처리가 어려우실 것 같습니다.
첨부의 경우는 별도로 로직을 추가하셔서 검증하는 것이 좋으실 것 같습니다.
javascript 부분도.. 기존 validation과 별도로... 검증 부분을 추가하시면 되실 것 같구요..
추가로.. springmodules는 URL이 변경된 것 같습니다.
http://java.net/projects/springmodules
그럼.. 즐거운 하루되십시오.
감사합니다.
말씀하신 것 처럼.. 서버 사이드 처리는 적용된 multipart resolver에 따라.. 객체가 넘어오기 때문에.. 처리가 어려우실 것 같습니다.
첨부의 경우는 별도로 로직을 추가하셔서 검증하는 것이 좋으실 것 같습니다.
javascript 부분도.. 기존 validation과 별도로... 검증 부분을 추가하시면 되실 것 같구요..
추가로.. springmodules는 URL이 변경된 것 같습니다.
http://java.net/projects/springmodules
그럼.. 즐거운 하루되십시오.
감사합니다.