jsp 에러 HTTP 상태 500

stan·2023년 6월 27일
0

에러 오류 예외

목록 보기
8/12

  • 500은 back단위 에러
    - 무조건 개발자의 잘못

원인 : null값이라 int로 못바꿈

요청을 안했으니 int num1= Integer.parseInt(request.getParameter("num1")); 얘도 없는거임

해결 :

	//사용자가 전송한 데이터들은 request 객체에 저장됨
	//웹에서의 모든 데이터는 String값으로 반환 됩니다 
	//별도의 선언없이 사용가능한 객체들이 여러개있는데,
	//이것들을 "내장객체"라고 함
	//맨 처음 화면을 로드하는 모든 요청은 GET
if(request.getMethod().equals("POST")) { //만약 POST요청이 들어왔다면
	int num1= Integer.parseInt(request.getParameter("num1")); //그거 나줘
	String op=request.getParameter("op");
	int num2=Integer.parseInt(request.getParameter("num2"));
	
	if(op.equals("+")) {
		result=num1+num2;
	}
	else if(op.equals("-")) {
		result=num1-num2;
	}
}

if(request.getMethod().equals("POST")를 먼저 걸어줌

  • 맨 처음 화면을 로드하는 모든 요청은 GET 이기 때문에 POST로 작업을 진행
    - 브라우져에 뜰때는 GET
    • 계산은 POST
    • 둘다 GET이면 화면 로드와 동시에 int num1= Integer.parseInt(request.getParameter("num1")); 가 실행 되는데 사용자가 아무것도 입력한게 없기 때문에 null이고 NullPointerExceptionError 발생
    • 위에서 아래로 읽어 내려가니까 form이 작동하기 전에 반환값을 받아오는 문법이 실행 되면 안됨
profile
이진 입니다

0개의 댓글