목록오류 원인 분석 해결 방안 (17)
The Debugging Chronicles : "코드의 미학"

원인 서버가 톰캣과 연결되어 실행 중인 상태에서 package를 생성 했다면 위와 같은 문제를 발생할 수 있다.서버에 연결 중인 상태에서 package나 class를 생성 했다면 오류를 발생해이 때 만든 패키지와 클래스 파일을 가져올 수 없을 수 있다. 해결 방안 서버와 연결을 끊고새로운 패키지와 클래스를 만들어서 연결 시킨다.그리고 이때 서버의 연결과 히스트리를 지우고 다시 실행해본다.

SQL실행하다가 table에 amdin 관리자 계정을 추가하려고 하니까 오류가 떴다. ORA-01950: no privileges on tablespace 'USERS' 찾아보니 테이블 페이스에 insert 할 수 있는 권한이 없다는 뜻....ALTER USER SEONAH DEFAULT TABLESPACE USERS QUOTA UNLIMITED ON USERS; 위에 코드를 하면 해결 될 수 있다는 설명에 시도 했지만 되지 않았다... 강사님께 가서 여쭤보면서 원인 규명을 하기 시작했다.... Docker 컨테이너를 실해하고 오라클 서버를 띄우면서 SQL PLUS 에 접속 할때 window로 설치한 분 들은 ADMIN 계정으로 들어가 즉 관리자 계정으로 들어가 계정을 생성했는데 SYSTEM 으로..

Eclipse > settings> Data Management>Driver Definitions 에서 연결한 드라이버를 선택하고 remove 눌러서 삭제 하면 제거 완료!

1. 에러가 발생한 라인 체크!!43번째 줄!! 43번째줄 뜻: line을 int타입으로 바꿔줘오류 이유 : line이 null이라서 못 바꿔줘 while 문이 종료 되려면 line 값이 null이여야한다. 그래서 line 문은 무조건 null 이 된다.따라서 int ansNum = Integer.parseInt(null);이 되는 것과 다름 없다. while 문을 한번만 돌리는 것으로 변경! 한번만 읽어 드리는 것으로 변경 문제해결!!!문제는 43번째줄에서 발생했지만, 해결은 26번째 줄해서 해결 이야기 할때는 항상 어디서 문제가 발생했고 그래서 어디를 바꿨다라고 이야기 해야함

NPE = 주어가 없어서 발생하는 에러 객체지향언어는 메서드를 객체가 실행한다.여기서 말하는 주어는 메서드를 실행시키는 주체를 말한다. 세상 모든 메서드는 객체명.xxxx()으로 실행 된다.객체가 실행시키는 것이다. sc.nextInt();rand.nextInt(10); sc, rand 가 주어이다 NPE = 주어가 없어서 발생하는 에러 즉 객체가 없어서 발생하는 에러 이다 if(StudentDTO.getCondition().equals("ALL")){StudentDTO.getCondition().equals("ALL") 여기서 주어가 2개인데StudentDTO와StudentDTO.getCondition()이다후자가 바로 문제!!!

먼저 에러 났을 때 코드를 살펴 보자>>>프론트- session.js const deleteUserApi = async () => { try { const token = localStorage.getItem('token'); // 또는 쿠키에서 가져오기 if (!token) { throw new Error('No authentication token found'); } const response = await fetch('http://localhost:8000/user/delete', { method: 'DELETE', h..

1. 첫번째 오류 - cors 에러분명히 서버와 프론트 코드가 맞게 잘 들어가 있었다. 하지만 다음과 같은 에러가 떴다. HTTP 204 성공 상태의 응답이 뜨고 있었고 서버에서도 성공 응답인 200 번 뜨고 있었다. 클라이언트와 서버 모두 cors 에러를 해결할 수 있는 조건들이 분명이 들어가있었다.app.use(express.urlencoded({ extended: false}));app.use( cors({ origin: "http://localhost:3000", method: ["GET", "POST", "DELETE", "PUT"], credential: true, })); const logoutApi = async () => { ..