프레임워크 문제인지 봐주세요
- 작성자 :
- 이*관
- 작성일 :
- 2011-04-26 18:03:55
- 조회수 :
- 2,686
- 구분 :
- 실행환경
- 진행상태 :
- 완료
Q
@RequestMapping(value = "/accdewrite.do") //기본정보
public ModelAndView Accdewrite(AccidentVo param, BindingResult bindingResult) throws Exception {
ModelAndView mav = new ModelAndView();
beanValidator.validate(param, bindingResult);
if (bindingResult.hasErrors()) {
mav.setViewName("redirect:/acc_de_write.do");
return mav;
}
int result = AccidentService.getAcc_de_write(param);
system.out.println('result');
mav.addObject("acc_num", param.getAcc_num());
system.out.println('acc_num');
mav.setViewName("redirect:/index.do");
system.out.println('1');
return mav;
}
1이라는 숫자까지 아무런 오류가없이 출력이됩니다.
그런데 페이지이동을 안해요;;; 오류라도 나면 어떻게 잡아서 수정하겠는데
디버그 돌려도 오류가 안뜨고 DB에 제대로 insert도 되고 다되는데 저 index.do로 페이지를 이동을 안합니다...
public ModelAndView Accdewrite(AccidentVo param, BindingResult bindingResult) throws Exception {
ModelAndView mav = new ModelAndView();
beanValidator.validate(param, bindingResult);
if (bindingResult.hasErrors()) {
mav.setViewName("redirect:/acc_de_write.do");
return mav;
}
int result = AccidentService.getAcc_de_write(param);
system.out.println('result');
mav.addObject("acc_num", param.getAcc_num());
system.out.println('acc_num');
mav.setViewName("redirect:/index.do");
system.out.println('1');
return mav;
}
1이라는 숫자까지 아무런 오류가없이 출력이됩니다.
그런데 페이지이동을 안해요;;; 오류라도 나면 어떻게 잡아서 수정하겠는데
디버그 돌려도 오류가 안뜨고 DB에 제대로 insert도 되고 다되는데 저 index.do로 페이지를 이동을 안합니다...
A
안녕하세요.. 이은관님..
호출하는 방식은 문제가 없는 것 같습니다.
다만, 페이지 이동이 되지 않는다는 의미가 이동한 화면(acc_de_write.do 나 index.do)가 나오지 않는다는 의미이시면..
"/acc_de_write.do" 또는 "/index.do"로 매핑된 Controller의 메소드가 호출되었는지.. 확인해 보시면 될 것 같습니다.
참고로.. "redirect:"는 client 사이드로 변경되기 때문에 새로운 request가 발생하는 것으로 이전 request 정보들은 남지 않습니다. 모델 정도도 남지 않고요..
첫번째 validation 오류가 있는 경우 "redirect:/acc_de_write.do"가 아닌.. 다시 등록에 해당되는 view명만 넘기셔야 모델에 담은 데이터나 이전에 request로 날아왔던 정보들이 남습니다.
두번재 호출의 경우는 정상으로 호출된 경우는 업무처리 흐름에 따라 redirect를 하셔도 되지만.. 동일하게 request 및 모델 정보가 전달되지 않습니다.
그럼.. 즐거운 하루되십시오.
감사합니다.
호출하는 방식은 문제가 없는 것 같습니다.
다만, 페이지 이동이 되지 않는다는 의미가 이동한 화면(acc_de_write.do 나 index.do)가 나오지 않는다는 의미이시면..
"/acc_de_write.do" 또는 "/index.do"로 매핑된 Controller의 메소드가 호출되었는지.. 확인해 보시면 될 것 같습니다.
참고로.. "redirect:"는 client 사이드로 변경되기 때문에 새로운 request가 발생하는 것으로 이전 request 정보들은 남지 않습니다. 모델 정도도 남지 않고요..
첫번째 validation 오류가 있는 경우 "redirect:/acc_de_write.do"가 아닌.. 다시 등록에 해당되는 view명만 넘기셔야 모델에 담은 데이터나 이전에 request로 날아왔던 정보들이 남습니다.
두번재 호출의 경우는 정상으로 호출된 경우는 업무처리 흐름에 따라 redirect를 하셔도 되지만.. 동일하게 request 및 모델 정보가 전달되지 않습니다.
그럼.. 즐거운 하루되십시오.
감사합니다.