Trouble Shooting

Trouble Shooting

[트러블슈팅/swagger] DTO에서 inner class 사용 시 swagger에서 인식하지 못하는 오류 해결

inner class 사용 시 문제 발생 하나의 DTO 클래스 내에 Request와 Response를 나눠서 static inner class로 생성하여 사용하는 경우 swagger에서 inner 클래스를 인식하지 못하는 문제가 발생한다. 아래와 같이 MemberLogin DTO를 사용 시에 Swagger에서 인식하지 못하여 이 요청과 관련 없는 다른 DTO가 보이게 된다. public class MemberLogin { public static class Request { private String email; private String password; } public static class Response { private TokenDto tokenDto; } } Swagger 내부 동작 원리 Sw..

Trouble Shooting

[트러블슈팅/docker/mongodb] mongo: not found 에러 / docker에 mongodb 이미지 띄우고 실행하기

Docker를 사용하여 MongoDB 사용해 보기 현재 진행 중인 프로젝트에서 일대일 DM 기능과 단체톡을 구현해야 하는데, RDBMS를 사용해도 되지만, NoSQL을 사용해 보자는 의견이 나와서 MongoDB를 사용해보려고 했다. MongoDB를 docker-compose.yml 파일을 이용해 docker에 자동으로 띄우고 사용해보려고 했는데, 그 과정에서 매우 많은 시행착오를 겪었다. 그 이유는.. mongoDB 버전이 최신화되며 명령어가 일부 변경되었기 때문이었다. 그 과정을 기록하고자 이 글을 쓴다. 문제점을 바로 보시려면 "mongo: not found" , "해결법" 부분을 봐주세요! docker-compose.yml 아래와 같이 docker-compose 파일에 mongodb 관련 내용을 추..

Trouble Shooting

[JPA, Test, Mockito] repository.save() test 시 오류 발생 org.mockito.exceptions.misusing.PotentialStubbingProblem 문제 해결

문제 상황 JPA repository를 사용하는데, 처음으로 repository에 save() 하는 로직에서 아래와 같은 문제가 발생했다. 말 그대로 어떤 엔티티를 추가하려는 요청(request)을 받고, 그 request 객체를 entity 객체로 변환하여 처음으로 jpaRepository에 save(entity)를 하는 부분이다. 서비스 메서드 전체 @Override @Transactional public RecruitDto registerRecruit(Request request, Long memberId) { MemberEntity memberEntity = memberRepository.findById(memberId) .orElseThrow(() -> new MemberException(Err..

Trouble Shooting

[오류 해결] Spring boot - Swagger, Redisson 적용 시 버전 conflict 문제 "Failed to start bean 'documentationPluginsBootstrapper'; nested exception is java.lang.NullPointerException"

오류 발생 Redisson을 처음으로 사용해 보려고 설정을 완료하고 일단 한번 빌드하고 실행해 봤는데, org.springframework.context.ApplicationContextException: Failed to start bean 'documentationPluginsBootstrapper'; nested exception is java.lang.NullPointerException 이런 예외가 터지면서 실행이 중단되었다. swagger build.gradle 일단 이 문제가 발생한 프로젝트의 swagger implementation문이다. //swagger implementation 'io.springfox:springfox-boot-starter:3.0.0' implementation '..

Trouble Shooting

[IntelliJ] 인코딩(Encoding) 설정 / 한글 깨짐 문제 해결

IntelliJ로 자바 프로젝트 중, 한글 깨짐 문제가 발생할 수 있다. 이는 VM, 서버(Tomcat), 파일(JSP 등), DB 에서 각각 사용하는 인코딩 방식이 달라서 발생한다. 따라서 사용하는 모든 것들의 인코딩을 가장 범용적인 UTF-8로 직접 설정을 해줘야 한다. IntelliJ에서 간단하게 VM, Tomcat, File에서 UTF-8 인코딩 설정을 하는 방법을 알아보자. 1. IntelliJ VM Encoding 설정 1) Help -> Edit Custom VM Options... 2) -Dfile.encoding=UTF-8 추가 2. Tomcat Encoding 설정 1) Run -> Edit Configurations ... 2) VM options -> -Dfile.encoding=U..

Trouble Shooting

[ port already in use ] 오류 해결 방법

인텔리제이 오류 발생 인텔리제이에서 로컬에서 서버를 돌리다가 서버를 종료하지 않고, 다른 프로젝트에서 서버를 돌리거나, 서버가 돌아가는 상태에서 그대로 인텔리제이를 종료한다거나 하는 경우, 아래와 같이 이미 Port 8080을 사용중이라는 오류가 발생할때가 있다. *************************** APPLICATION FAILED TO START *************************** Description: Web server failed to start. Port 8080 was already in use. Action: Identify and stop the process that's listening on port 8080 or configure this applicati..

HSRyuuu
'Trouble Shooting' 카테고리의 글 목록