2013-03-29 2 views
0

프로덕션 환경에서 NULL 포인터 예외가 발생했습니다. 로컬 시스템에서 런타임 예외를 복제하려고합니다. 나는 실제로 화재 여우 탬퍼 도구를 사용하여 사후 매개 변수를 가로 채고 있습니다. 탬퍼 창에 NULL 값을 입력하고 요청자 측 코드에 요청을 제출했습니다.NULL 포인터 경우 (JAVA JSP)

게시 매개 변수는 ccNumber, ccYear 및 ccMonth입니다. 이 모든 변수는 JSP 페이지에서 정의됩니다. 이것은 레거시 코드이므로 jsp에서 많은 스크립틀릿 코드를 볼 수 있습니다.

사용자가 신용 카드 번호, 월 및 연도 필드를 제출하면 웹 페이지에서 AJAX를 사용하여 아래의 JSP에 매개 변수를 게시합니다 페이지. 사실 fire fox 탬퍼 데이터를 사용하여 요청 매개 변수를 가로 채고 이러한 모든 값을 null로 설정하고 탬퍼 데이터를 제출합니다.하지만 흥미롭게도 값은 JSP 페이지에서 null로 처리되지만 ccNumber를 사용하면 NULL 포인터 예외가 발생하지 않았습니다. .lenghth() 메서드 대신 길이가 4로 표시됩니다. 변경 도구 창에 올바른 값을 설정하고 있습니까 ?? 매개 변수 값을 null로 변경하는 중입니다. 아마도 이것이 올바르지 않은 것입니까?

JSP 페이지에서 값이 null이되지 않는 이유는 무엇입니까 ??

Payment.jsp

ccNumber = (request.getParameter("ccNumber")); 
ccExpireMonth = (request.getParameter("ccExpireMonth")); 
ccExpireYear = (request.getParameter("ccExpireYear")); 
ccType = (request.getParameter("ccType")); 

If (cisCardNotVlaid) 
    { 

    ccNumber .length() == 0 // this suppose to throw the NULL pointer exception . 

답변

0

request.getParameter("anyParameter") 반환 null이 단지에서 모든 매개 변수를 지정하지 마십시오.

+0

방금 ​​설명을 추가했습니다. 추가 정보 – Pras

+0

"null"을 실제 null 값이 아니라 매개 변수로 전달합니다. 실제로'null'을 얻으려면 매개 변수 목록에서 매개 변수를 삭제하십시오. 마우스 오른쪽 버튼을 클릭하고 "요소 제거"또는 유사한 것을 선택하십시오. – skirsch

+0

마우스 오른쪽 버튼 클릭 메뉴에서 "요소 제거"또는 아무 것도 정렬하지 않았습니다. 추가 할 수는 있지만 제거 할 수는 없습니다 ... – JoshC13