새 프로젝트 딸 일이 있어서 기존 openapi generator 쓰듯이 작성을 했는데 openApiGenerate { generatorName.set("kotlin-spring") inputSpec.set("$rootDir/src/main/resources/openapi.yml") outputDir.set("$buildDir/generated/openapi") } sourceSets.main { java.srcDirs("$buildDir/generated/src/main") } 아래와 같이 곧 deprecated 된다는 내용이 눈에 띈다. 찾아보니 그래들 버전 8.5로 올리면서 deprecated 되나보다. 설명대로 layout.buildDirectory로 대체하니 잘 돌아간다. openApiGener..
다른 서비스 데이터 호출 시 이렇게 날짜를 타임스탬프로 받아온다. { "customer_addr": null, "customer_email": null, "customer_id": "customer-id-bdd35d19-7a53-4a94-bc0e-1c5de27d0b21", "customer_name": null, "customer_postcode": null, "customer_tel": null, "inserted": 1699339274, "updated": 1699339275 } 우리 서비스는 LocalDateTime을 표준으로 사용하므로 변환이 필요하다. 아래와 같이 LocalDateTime으로 변환하는 방법은 다양하다. val timestamp: Long = 1699339274 var localD..
openApiGenerator를 사용하는데 컴포넌트 데이터 포맷이 date 혹은 date-time일 때 LocalDate와 LocalDateTime으로 타입을 사용하고 싶다. format: date format: date-time build.gradle 파일 openGanerator 설정 부분에 아래와 같이 typeMappings와 importMappings를 세팅해주면 된다. typeMappings.set( mapOf( "string+date" to "LocalDate", "string+date-time" to "LocalDateTime" ) ) importMappings.set( mapOf( "LocalDate" to "java.time.LocalDate", "LocalDateTime" to "jav..
앞으로 MSA하면서 API Gateway를 통해서 REST API를 제공하기 위해 프론트단과 연동을 하는데 클라이언트단에서 CORS 에러가 발생한다. CORS(Cross-Origin Resource Sharing)란 이해하기 쉽게 말해, 서로 다른 도메인 간의 리소스 공유가 가능하도록 허용해주는 정책(?)이다. API Gateway에서는 콘솔 상에서 쉽게 설정이 가능하다. 리소스에서 메소드가 생성된 상위 리소스 단위에서 CORS 활성화 생성 버튼을 클릭하면 아래처럼 이렇게 기본값으로 활성화 처리가 가능하다. 그런데도 CORS 에러가 발생한다면 OPTIONS의 통합 응답에 들어가서 헤더 매핑에 'Access-Control-Allow-Headers' 값을 '*' 처리를 해주면 응답을 아예 못 불러오던 COR..