Caused by: java.lang.NoSuchMethodError: 'java.lang.Object org.hibernate.ScrollableResults.get(int)'QueryDsl 의 , 그룹화하여 받을 수 있는 transform + GroupBy 사용시 SpringBoot 3.x 버전에서 나오는 에러이다.JPQLTemplates.DEFAULT 를 추가해주자.@Configurationclass QueryDSLConfig(val entityManager: EntityManager) { @Bean fun jpaQueryFactory(): JPAQueryFactory { return JPAQueryFactory(JPQLTemplates.DEFAULT,entityManager..
일-상/오류노트
problemHttpMediaTypeNotAcceptableException : No acceptable representation406Post 메서드 에서 응답 헤더 불일치 에러가 발생했다응답도 잘 나오고 디버깅해도 서블릿단까지 가서 에러가 났다.solution문제의 코드를 보면import org.springframework.http.MediaType@PostMapping("/customer/board", consumes = [MediaType.MULTIPART_FORM_DATA_VALUE])fun register( req: ......., @RequestPart(value = "files", required = false) files : List?,): ResponseEntity { ..
problem이미지 호스팅서버로 s3 를 이용하고 있다.이미지 url 을 클라이언트로 넘겨주고, url 로 이미지를 조회하는데 권한오류가 뜬다 ..solutionCloud Front 설정https://us-east-1.console.aws.amazon.com/cloudfront/v4 https://us-east-1.console.aws.amazon.com/cloudfront/v4 us-east-1.console.aws.amazon.com우선 Cloud Front 설정을 해주어야 한다.배포생성 후 S3 를 선택한다. ( 나머지 설정은 기본값 ) S3 버킷 정책 설정자신의 버켓에 들어가 권한 -> 버킷정책 -> 편집 아래 구문을 추가해준다{ "Sid": "PublicReadGetObject", ..
problem필자는 맥북 M1 Pro (16G) 를 사용중이다intelliJ 를 사용하다 보면 메모리 점유율이 엄청나게 늘어나는 이슈를 발견 했다.무거운 프로젝트도 아닌데 그럴일인가 싶어서 검색 후 개선한 사항에 대해서 적어본다.solution인텔리제이 에서Cmd + Shift + A -> Action 탭에 choose 를 검색한다. Current 는 ~~~ Jcef 라고 되어 있을것이다.드롭다운 버튼을 눌러 동일버전의 (vanilla) JBR을 선택하면 된다.
problem깃허브 액션으로 ec2로 jar 를 복사 하는 과정에서 에러를 만났다.handshake failed: ssh: unable to authenticate, attempted methods [none publickey], no supported methods remainsolution아래 항목을 꼼꼼히 체크 해보자1. github -> Repository secrets 들 을 꼼꼼히 확인해준다sudo vi /etc/ssh/sshd_config# 아래 설정 활성화PubkeyAuthentication yes# 나온 후 sudo systemctl restart sshd 2. 공개키 서버( ec2 )에 추가cat ~/.ssh/github.pub >> ~/.ssh/authorized_keyschmod 6..
proble어떤한 요청이 실패를 하면 나는 자연스럽게 재시도 요청을 했다.이 재시도는 요청을 받는 서비스에 트래픽만 높힐 뿐이다.하지만 DB 입장의 입장은db의 요청을 바로 롤백을 하는 것 보단 재시도를 통해 완전한 처리를 보장하는 것이 더 유용하다. 재시도가 동반되는 요청들은 항상 데이터를 멱등성 있게 처리 하는 방법은 빼놓지 말자.https://www.youtube.com/watch?v=raPJqrtGMxY solution1-1 트랜잭션 보장이 안되는 환경에서 대사 작업이 필요하다.대사작업 ( AServiceDB와 BSeriverDB 의 데이터 정합성을 맞추는 작업)msa 환경은 트랜잭션이 보장되지 않는다 그래서 직접 개발자가 API 를 개발하여 두 db 의 정합성을 확인하고 맞추는 작업이 필요하다스..
한영키를 캡스락키로 쓰다가 손이 잘 안가서 오른쪽 커맨드키를 한영키로 쓰기로 했다.준비하기터미널을 실행하여 아래 코드를 복사 붙여넣기 한다 ( 한줄한줄 할 필요 없이 한번에 복사 붙여넣기 해도 됌 )터미널 실행방법command⌘ + 스페이스바를 누르면 나오는 Spotlight 검색에 터미널 / terminal 을 입력해서 엔터를 눌러 실행시킨다. mkdir -p /Users/Shared/binecho '''#!/bin/sh\nhidutil property --set '\'{\"UserKeyMapping\":\[\{\"HIDKeyboardModifierMappingSrc\":0x7000000e7,\"HIDKeyboardModifierMappingDst\":0x70000006d\}\]\}\''''' > /U..
파일의 입출력을 위해서는 inputStream을 이용하여 Stream을 생성하고 데이터를 읽어온다.지금까지 파일을 보내고 받아오는 과정에서 단어의 정의나 데이터가 전송되는 과정을 명확히 파악하지 못하고 있었다.데이터가 전송되는 과정 import java.io.FileInputStream;public class Main { public static void main(String[] args) { try{ FileInputStream fileInputStream = new FileInputStream("practice.txt"); int i =0; while ((i = fileInputStream.read()) != -1) { ..