<목표>
웹페이지에서 비밀번호 찾기를 누르면 나오는 모달창에서
1. 아이디와 이메일을 입력받고,
2. 입력받은 이메일로 인증코드를 보낸 다음,
3. 전송받은 인증코드를 입력하면
4. 새 비밀번호를 입력받아서
5. 비밀번호를 새로 만든다.
이때, 인증코드를 잘못 입력하면 아이디와 이메일을 입력받는 초기창으로 돌아감.
<문제 발생>
인증코드 전송까지는 잘 되는데 올바른 인증코드를 입력하면 아래 사진처럼 오류가 발생한다.
(틀린 인증코드를 입력하면 정상작동됨.)
<오류 해결 과정>
콘솔창 에러메시지 마지막 줄인
1. pwdUpdateEnd.up:1(pwdUpdateEnd.up 의 첫번째 줄에서부터 오류가 난 것)
이 부분과,
2. 인증코드를 잘못 작성했을 때는 정상작동되고, 인증코드를 올바르게 입력했을 때만 오류가 발생한다는 점
을 고려하면
인증코드를 올바르게 입력했을 때 페이지를 넘겨주는 부분에서 문제가 발생했을 것으로 추측해볼 수 있다.
if문의 loc 부분 코드에서 문제가 생긴 것으로 추측 가능
loc = request.getContextPath()+"/login/pwdUpdateEnd.up?userid="+userid;
이 부분에서 문제가 발생했다면 userid 부분에서 오류가 있었을 가능성이 가장 높기 때문에
loc = request.getContextPath()+"/login/pwdUpdateEnd.up";
이렇게 userid 부분을 제외하고 실행시켜 보니까
페이지가 넘어갔다.!!!
그러면 userid 부분에서 오류가 발생한 것이 확실하기 때문에
그 부분의 코드로 넘어가서 userid 를 확인해본다.
System.out.println("===userid :" + userid);
위의 코드를 넣어봐서 넘어온 userid 가 어떤 값을 가지는지 확인해본다.
userid 값 확인 결과
=== userid : [object:Object]
userid 가 안넘어왔다,,,,,
그러면 userid 를 넘겨주는 부분으로 가보면
!!!! 오류 발견 !!!!
frm.userid.value = $("input#userid");
frm.userCertificationCode.value = $("input#input_confirmCode").val();
여기서 userid 부분에 .val() 이 빠져있어서 값이 안넘어갔던 것이다,,,,,,
<문제 해결>
frm.userid.value = $("input#userid").val();
frm.userCertificationCode.value = $("input#input_confirmCode").val();
올바르게 수정을 하고 프로그램을 작동해보면,
=== userid: kimhw
값이 잘 넘어왔고,
(마지막줄의 ~~~~~~~~~~~~~~~userid : null 은 무시해도 됨)
값이 잘 넘어오는 것을 볼 수 있다.
문제 해결!
'오류 해결' 카테고리의 다른 글
문제 해결 - 부트스트랩 모달 안보임 (1) | 2022.11.14 |
---|---|
java.lang.ClassNotFoundException / 이클립스 clean 기능 (1) | 2022.09.20 |