묻고 답해요
156만명의 커뮤니티!! 함께 토론해봐요.
인프런 TOP Writers
-
미해결김영한의 실전 자바 - 고급 2편, I/O, 네트워크, 리플렉션
SocketException: Connection reset 에러가 뜨지 않습니다
학습하는 분들께 도움이 되고, 더 좋은 답변을 드릴 수 있도록 질문 전에 다음을 꼭 확인해주세요.1. 강의 내용과 관련된 질문을 남겨주세요.2. 인프런의 질문 게시판과 자주 하는 질문(링크)을 먼저 확인해주세요.(자주 하는 질문 링크: https://bit.ly/3fX6ygx)3. 질문 잘하기 메뉴얼(링크)을 먼저 읽어주세요.(질문 잘하기 메뉴얼 링크: https://bit.ly/2UfeqCG)질문 시에는 위 내용은 삭제하고 다음 내용을 남겨주세요.=========================================[질문 템플릿]1. 강의 내용과 관련된 질문인가요? (예/아니오)2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예/아니오)3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예/아니오)[질문 내용]java.net.SocketException: Connection reset네트워크 예외4- 강제종료 강의 중 위 에러가 뜨질 않습니다. 혹시나 서버에서 close() 호출 후 FIN packet을 보내는 것이 오래걸리나 싶어 Thread.sleep()도 3초에서 5초 가량으로 늘려보기도 했는데, "read = -1" 이라고 콘솔에 뜹니다. 반면, "java.net.SocketException: Broken pipe" 에러는 잘 뜹니다. 무슨 문제인지 잘 모르겠습니다.
-
미해결
Spring boot에서 일반 예외처리와 api예외처리 한번에 하는 좋은 방법 없을까요?
@Slf4j @ControllerAdvice @RequiredArgsConstructor public class ExceptionControllerAdvisor { private final HttpServletRequest httpServletRequest; private final HttpServletResponse httpServletResponse; @ExceptionHandler(RollbackTriggeredException.class) public ResponseEntity<ErrorResponse> rollBackException(RollbackTriggeredException e) throws IOException { if (httpServletRequest.getRequestURI().startsWith("/api")) { int statusCode = e.getStatusCode(); ErrorResponse body = ErrorResponse.builder() .code(String.valueOf(statusCode)) .message(e.getMessage()) .validation(e.getValidation()) .build(); return ResponseEntity.status(statusCode) .body(body); } else { httpServletResponse.sendError(e.getStatusCode()); return null; } } } spring boot와 thymeleaf를 사용해서 이런식으로 api 요청일 경우 해당 요청 uri의 앞에 api를 넣어서 api가 앞에있으면 ResponseEntity객체를 이용해서 RuntimeException을 상속받은 커스텀 예외(RollbackTriggeredException)을 처리하고, api 가 없다면 HttpServletResponse객체의 sendError 메서드를 사용해서 에러를 발생시킨다음 Spring boot의 예외처리 매커니즘을 통해 에러페이지로 이동하도록 코드를 짜보았습니다. 하지만 else부분에 else를 작성해줘야한다는 점이 좀 좋지 않은 코드는 아닐까 하는 생각이들게 되더라고요??일반예외(페이지 이동하다 예외가 발생했을경우)와 api예외(ajax요청하다 예외가 발생했을 때)를 동시에 처리하는 좋은 방법있으면 알려주신다면 감사하겠습니다.
-
미해결[C#과 유니티로 만드는 MMORPG 게임 개발 시리즈] Part8: Entity Framework Core
Unhandled exception
안녕하세요. 강사님. 강의 잘 듣고 있습니다. 'CRUD 실습' 을 진행하는 과정에서 에러가 났는데, 구글신에 검색해봐도 딱히 해결법을 찾지 못해 글 남깁니다. 올려주신 코드 확인해봐도 똑같고, forceReset 이 true 면 Db 새로 잘 만드는데 forceReset 을 false 로 하고 실행하면 스샷과 같이 Exception 이 납니다. 이유가 무엇일까요..
-
미해결탄탄한 백엔드 NestJS, 기초부터 심화까지
http-exception.filter.ts 파일 내용 중 질문이 있습니다.
const error = exception.getResponse() as | string | { error: string; statusCode: number; message: string | string[] }; 강의 중에 http-exception.filter.ts 파일에서 error 변수를 위와 같이 할당을 하는데 as | string 뒤에 있는 타입을 { error: string, statusCode: number; message: string | string[] };로 받는데 객체의 속성들을 특별하게 넣어준 이유가 있나요? 단순히 { error: string }로만 처리해도 다른 속성 값들이 자동으로 들어오기 때문에 출력할 때는 문제가 없는 것 같은데 정확한 타입을 제공하기 위해서 라던가 등 특별한 이유가 있는지 궁금합니다.