ERRORType definition error: [simple type, class kr.---.---_open_api.dto.--DTO$Process] 🔹 simple type → Jackson이 복잡한 타입으로 인식하지 못했다는 뜻즉, 이 클래스(Process)를 직렬화/역직렬화 가능한 구조체로 판단하지 못했다는 것왜 못했냐? 바로 👇🔹 ---DTO$Process → 내부 클래스 (non-static inner class)$ 기호는 Java 컴파일러가 **내부 클래스(inner class)**를 표시할 때 사용하는 표기법즉, Process가 ---DTO 안의 static이 없는 내부 클래스라는 뜻이에요 🧠 Jackson 입장에서는?Jackson이 new Process()를 하려고 하는데,내..
Project

문제모듈이 이미 존재한다고 다시 등록이 안됨..Module already exists 해결방법 1) modules.xml 파일의 내용 삭제https://ghi512.tistory.com/43 [IntelliJ] Module already exists 에러 해결 방법개요 아래는 "C:\Work\JAVA\fastcampus" 위치에 "Chap4" 라는 이름의 새로운 모듈을 생성하고자 하는 상황이다. 그런데 "Module already exists" 라는 에러 메시지가 뜨면서 모듈이 생성되지 않는다. 이미 존재하ghi512.tistory.com 방법 2)1번 방법이 되지 않아서 gpt가 알려줬다.. File-invaildate Caches-Restat 해보면 modules가 잘 설치된 것을 볼 수있다..

1. https 적용https 적용기 https 적용기기존의 문제점프로젝트를 진행하면서 사용자의 위치가 필요했다.사용자의 현재위치를 가져오는 API는 Geolocation API을 사용하려 했다. 이는 사용자에게 권한 확인을 받은 후 사용할 수 있다.navigatsesam-dev.tistory.com 2. 프론트에서 위치 정보(위도, 경도)를 받아왔다.클릭하면 위도, 경도를 받아올 수 있게 했다.const Location = () => { const userInfo = useSelector(state => state.loginCheck.loginInfo); const sendLocation = () => { if (navigator.geolocation) {..

기존의 문제점프로젝트를 진행하면서 사용자의 위치가 필요했다.사용자의 현재위치를 가져오는 API는 Geolocation API을 사용하려 했다. 이는 사용자에게 권한 확인을 받은 후 사용할 수 있다.navigator.geolocation 객체를 이용하면 된다. 그러나 해당 객체가 없을 수도 있으므로 다음과 같은 방식으로 처리하여 사용할 수 있다.if('geolocation' in navigator) { // 위치정보 사용 가능} else { // 위치정보 사용 불가능} 문제사용자의 위치를 가져오고 싶었지만, https환경에서만 사용가능 했다. HTTPS🔒http는 hypertext transfer protocol의 약자로 쉽게말해 브라우저와 서버의 통신 규약이다. 다시말해 우리가 데이터를 주고 받는..

1. VM 생성 & 고정 IP로 변경Docker+GCP로 프론트 배포 정리위에 링크해서 해두었다! VM 에 연결된 아이피를 고정 아이피로 변경로 변경도 해주어야 한다. 2. 외부 도메인에 네임서버를 GCP로 변경- 영역이름은 고유하게 만들면 된다.- DNS 이름은 도메인 이름을 넣는다- DNSSEC는 Domain Name System Security Extensions 라는 의미로 이름조회에 대한 응답을 인증하는 기능이다. 공격자가 DNS요청에 대한 응답을 조작 또는 악성 처리하는 것을 방지한다고 되어있는데, 자세한건 아래 사이트에서 확인해보는게 좋을거 같다. 기본값이 사용안함으로 되어있긴 한데, 여기서는 사용으로 했다.https://cloud.google.com/dns/docs/dnssec?hl=ko ..
문제com.mongodb.MongoCommandException: Command failed with error 18 (AuthenticationFailed): 'Authentication failed.' MongoDB 서버에 인증 정보를 사용하여 로그인 시도가 실패했음을 의미한다. 오류 메시지는 "Authentication failed."로, 인증이 실패했다는 것을 나타낸다. 해결application.yml 파일에서 접속 URI를 바꾸어 주었다. 변경 전spring: application: name: chatting-service data: mongodb: username: root password: 1234 host: 35.192.--.--- p..

상황문제 : GATEWAY 에 api/v1/user 로 들어오는 요청이 USER-SERVICE 로 흘러가지 않았다.GATEWAY 에 USER-SERVICE가 분명 올라가 있다 하지만 해당 경로로 요청할 시 GATEWAY 에서는 USER-SERVICE를 찾을 수 없다고 로 log가 나온다.이유는 api/v1/user 로 들어오는 요청에 대해 gateway에선 USER-SERVICE로 로드밸런싱 해주는데 gateway와 USER-SERVICE는 서로 다른 network에서 실행중이어서 소통이 안됐다. 해결#1다른 VM에서 실행 중이던 gateway와 USER-SERVICE를 같은 VM( villion-server )에서 실행해주었다. #2하나의 network 를 만들어서 소통이 가능하게 했다.do..

상황문제 : GATEWAY 에 api/v1/user 로 들어오는 요청이 USER-SERVICE 로 흘러가지 않았다.GATEWAY 에 USER-SERVICE가 분명 올라가 있다 하지만 해당 경로로 요청할 시 GATEWAY 에서는 USER-SERVICE를 찾을 수 없다고 로 log가 나온다.이유는 api/v1/user 로 들어오는 요청에 대해 gateway에선 USER-SERVICE로 로드밸런싱 해주는데 gateway와 USER-SERVICE는 서로 다른 network에서 실행중이어서 소통이 안됐다. 해결따라서 아래의 network 를 만들어서 소통이 가능하게 했다.docker network create test-net 생성 후 아래의 명령어로 container를 실행할 때 네트워크 추가docker ..

eureka 배포하는 방법에 Docker와 전통적인 가상 머신(VM)을 사용하는 방법으로 2가지를 고려했다. 방법1. 전통적인 가상 머신(VM)에서의 작업 흐름(Docker 사용 X)VM 생성:클라우드 서비스(예: AWS, Azure, GCP) 또는 로컬 환경에서 가상 머신을 생성한다.인스턴스에 Java 설치:VM에 접속하여 필요한 Java 버전을 설치한다.예시: sudo apt-get install openjdk-11-jdkEureka 프로젝트 .jar 파일을 인스턴스에 업로드:로컬 머신에서 .jar 파일을 VM으로 전송한다.예시: scp eureka.jar user@vm-ip:/path/to/directory실행:Java 명령을 사용하여 .jar 파일을 실행한다.예시: java -jar /path/t..

프론트엔드 배포 준비물1. vm 2. docker 3. git(선택)4. front source 5. node.js6. nginx 해야할 일1. 클라우드 컴퓨팅을 대여한다2. 클라우드에 도커를 설치한다.3. 깃을 설치한다. (선택)4. 프론트엔드 소스를 받아온다.5. 도커를 이용해서 nginx 를 사용해 화면을 배포한다. 그림 한 장 요약 Docker + GCP 활용한 프론트 배포 과정#1 GCP 환경 설정1. VM 인스턴스 생성 (= AWS EC2 인스턴스 생성)1-1.Google Cloud 가입https://cloud.google.com/products/compute?hl=ko https://cloud.google.com/products/compute?hl=ko cloud.google.com 1..