동일한 VO 에 대한 Controller에서의 컨트롤여부 문의
- 작성자 :
- 박*덕
- 작성일 :
- 2014-04-17 11:02:15
- 조회수 :
- 610
- 구분 :
- 실행환경
- 진행상태 :
- 완료
Q
안녕하세요 담당자님
등록화면 호출 Controller
...
model.addAttribute("testVO", new testVO());
model.addAttribute("testVO1", new testVO());
...
호출된 JSP
<form:form commandName="testVO" name="testFrm" method="post">
<form:input path="nm" id="nm" ....>
</form>
<form:form commandName="testVO1" name="testFrm" method="post">
<form:input path="nm" id="nm" ....>
</form>
입력정보를 각각 다르게 입력한 후
등록처리 Controller
....@ModelAttribute("testVO") TestVO testVO,
@ModelAttribute("testVO1") TestVO testVO1 ..... ) throws Exception {
System.out.println("testVO.getNm:"+testVO.getNm() );
System.out.println("testVO1.getNm:"+testVO1.getNm() );
}
위와 같이 실행하여 보면 Contorller 단에서
testVO1.getNm()이 입력값이 아닌 testVO.getNm() 을 뿌려주네요.
한 화면에서 동일한 VO에 대한 접근이 불가능한건지요?
등록화면 호출 Controller
...
model.addAttribute("testVO", new testVO());
model.addAttribute("testVO1", new testVO());
...
호출된 JSP
<form:form commandName="testVO" name="testFrm" method="post">
<form:input path="nm" id="nm" ....>
</form>
<form:form commandName="testVO1" name="testFrm" method="post">
<form:input path="nm" id="nm" ....>
</form>
입력정보를 각각 다르게 입력한 후
등록처리 Controller
....@ModelAttribute("testVO") TestVO testVO,
@ModelAttribute("testVO1") TestVO testVO1 ..... ) throws Exception {
System.out.println("testVO.getNm:"+testVO.getNm() );
System.out.println("testVO1.getNm:"+testVO1.getNm() );
}
위와 같이 실행하여 보면 Contorller 단에서
testVO1.getNm()이 입력값이 아닌 testVO.getNm() 을 뿌려주네요.
한 화면에서 동일한 VO에 대한 접근이 불가능한건지요?
A
안녕하세요. 박희덕님.
한 화면에서 동일한 VO를 접근하는 것은 문제가 없습니다.
다만, <form:form>을 통해 생성된 form의 submit 부분 처리는 해당 form 안에 있는 데이터만을 파라미터로 던지기 때문에 다른 form에 있는 데이터가 request로 전달되지 않기 때문입니다.
이 경우는 <form:form>이 아닌 <form> 형태로 하나로 합치셔야 합니다.
그럼, 즐거운 하루되십시오.
감사합니다.
한 화면에서 동일한 VO를 접근하는 것은 문제가 없습니다.
다만, <form:form>을 통해 생성된 form의 submit 부분 처리는 해당 form 안에 있는 데이터만을 파라미터로 던지기 때문에 다른 form에 있는 데이터가 request로 전달되지 않기 때문입니다.
이 경우는 <form:form>이 아닌 <form> 형태로 하나로 합치셔야 합니다.
그럼, 즐거운 하루되십시오.
감사합니다.