[데이터 insert 이중 submit현상]
- 작성자 :
- 양*순
- 작성일 :
- 2015-09-08 16:48:00
- 조회수 :
- 1,508
- 구분 :
- 기타
- 진행상태 :
- 완료
Q
안녕하세요.
웹 프로그램 중 자료를 등록할 때.
insert프로세스를 탈 때 처음에는 안그랬던 거 같은데.
이중으로 등록이 되면서 pk오류가 난 뒤, 리스트로 화면전환시 오류가 납니다.
데이터베이스에는 잘 들어가 있고.
두번 등록하려고 시도를 하다가 pk 에러를 내보내면서 나는 오류더라구요.
전자정부 표준프레임워크 sample에는 SessionStatus를 사용하여 setComplete() 함수를 적용하는 부분이 이중등록 방지인것으로 알고 있었는데.
정상동작이 되지 않았습니다.
과정에서 이중등록은 controller단에서 두번 호출하는 것이 아니라
service단에서 두번 insert하다가 오류가 났습니다.
controller에서 setComplet()함수는 실행도 못했던 거 같습니다.
제가 구현한 방법에 문제가 없는 것인지..궁금해서 문의사항으로 올리게 되었습니다.
controller단에서 service method호출시 SesstionStatus를 parameter로 보낸 뒤
service단에서
아래와 같이 조건을 걸어주었습니다.
이중등록은 되지 않지만, 다른 문제가 없을지 문의 및 조언 부탁드립니다.
--------------------------------------------------------
if(XXXVO.getSessionStatus().isComplete()){ //isComplete()값이 true일때는 DAO호출을 하지 않기
}else{
XXXManageDAO.insertXXX(XXXVO);
XXXVO.getSessionStatus().setComplete(); //DAO호출 후 true로 set....
}
웹 프로그램 중 자료를 등록할 때.
insert프로세스를 탈 때 처음에는 안그랬던 거 같은데.
이중으로 등록이 되면서 pk오류가 난 뒤, 리스트로 화면전환시 오류가 납니다.
데이터베이스에는 잘 들어가 있고.
두번 등록하려고 시도를 하다가 pk 에러를 내보내면서 나는 오류더라구요.
전자정부 표준프레임워크 sample에는 SessionStatus를 사용하여 setComplete() 함수를 적용하는 부분이 이중등록 방지인것으로 알고 있었는데.
정상동작이 되지 않았습니다.
과정에서 이중등록은 controller단에서 두번 호출하는 것이 아니라
service단에서 두번 insert하다가 오류가 났습니다.
controller에서 setComplet()함수는 실행도 못했던 거 같습니다.
제가 구현한 방법에 문제가 없는 것인지..궁금해서 문의사항으로 올리게 되었습니다.
controller단에서 service method호출시 SesstionStatus를 parameter로 보낸 뒤
service단에서
아래와 같이 조건을 걸어주었습니다.
이중등록은 되지 않지만, 다른 문제가 없을지 문의 및 조언 부탁드립니다.
--------------------------------------------------------
if(XXXVO.getSessionStatus().isComplete()){ //isComplete()값이 true일때는 DAO호출을 하지 않기
}else{
XXXManageDAO.insertXXX(XXXVO);
XXXVO.getSessionStatus().setComplete(); //DAO호출 후 true로 set....
}
A
안녕 하세요.
표준프레임워크 센터 입니다.
SessionStatus의 setComplete()함수는 세션을 클리어 해주는 함수 입니다.
이중 등록과는 상관이 없을꺼 같습니다.
요소기술 - 이중등록(Double Submit) 방지 컴포넌트를 적용하여 이중 등록을 해결 하시면 될꺼 같습니다.
하단 위키를 참고 해주세요.
http://www.egovframe.go.kr/wiki/doku.php?id=egovframework:com:v3:cmm:doublesubmit
감사 합니다.
표준프레임워크 센터 입니다.
SessionStatus의 setComplete()함수는 세션을 클리어 해주는 함수 입니다.
이중 등록과는 상관이 없을꺼 같습니다.
요소기술 - 이중등록(Double Submit) 방지 컴포넌트를 적용하여 이중 등록을 해결 하시면 될꺼 같습니다.
하단 위키를 참고 해주세요.
http://www.egovframe.go.kr/wiki/doku.php?id=egovframework:com:v3:cmm:doublesubmit
감사 합니다.