Firefly Pointer 'Java & Spring/Error' 카테고리의 글 목록 (2 Page) — 궁금하신 점이 있다면 댓글로 남겨주세요.(2023년~ 노션으로 이동)

Java & Spring/Error

    [에러로그] JpaSystemException - 원인 : GenerateValue

    [에러로그] JpaSystemException - 원인 : GenerateValue

    에러로그 { "status": 400, "exception": "JpaSystemException", "message": "잘못된 요청입니다." } 원인 제목에서 알 수 있듯 여러 원인이 존재 할 수 있으나, 이번 나의 원인은 식별자 생성 전략을 설정해 주지 않아서다. 즉, 매우 기초적이고 단순한걸 간과했다가 하루를 눈녹듯 녹여버린 케이스. 해결방법 @GeneratedValue /** * DB 유형에 따라 생성 전략을 변경할 수 있고, 설계에 따라 직접 지정하기도 한다. * 두 방식 모두 Java.persistence 라이브러리를 사용한다. * * 1. JPA에서의 전략설정 * DB에 따라 시퀀스 전략 등 다른 전략을 택하기도 하며, 디폴트는 IDENTITY 전략이다. * 변경방법은 아래와 같다. * @..

    [Ngrok] Cors 이슈 해결하기

    [Ngrok] Cors 이슈 해결하기

    Ngrok을 이용한 사용을 하다보면, Postman에서는 정상적으로 동작을 하나, 프론트에서 브라우저 등으로 요청을 보내면 cors 이슈가 발생할 수 있다. 1. 아래의 명령어로 ngrok 서버를 실행해보자 ngrok http --host-header=rewirte 8080 * 여기서 8080은 본인이 사용하고자 하는 로컬 포트 번호이다. * 여기서 포트는 서버쪽에서 요청을 받는 포트이므로, 프론트의 포트랑은 다른 값이어도 된다. 2. controller에서 @CrossOrigin으로 일단 와일드로 열어보기 @CrossOrigin(origins = "*", allowedHeaders = "*")

    [SpringBoot] SpringSecurity와 React Axios 간의 JWT 인식문제

    문제상황 : 포스트맨을 이용한 JWT인증은 정상적으로 수행되고 있으나, 프론트단에서 콘솔이나 브라우저를 이용한 요청을 전송할 때 Header에 JWT가 정상적으로 담겨 오지 않는다 즉, 디버깅을 해보면 요청 전송시 Header에서 NullpointerException이 발생한다. 원인 1. SpringBoot Security 측면 서버에서 응답으로 보내는 JWT 토큰의 이름(키값)과 요청으로 인증할 때 받는 JWT 이름(키값)은 다르게 세팅이 가능하므로 주의해야한다. 이에 따라 프론트에서 요청을 전송할 때 올바르지 않은 이름으로 전달한다면 NullpointerException이 될 수 있다. 1-1) JwtAuthenticationFilter : response.setHeader안의 "Authorizat..

    [SpringBoot] hibernateLazyInitializer 및 순환참조 에러

    [SpringBoot] hibernateLazyInitializer 및 순환참조 에러

    에러로그 hibernateLazyInitializer 문제 상황 보다시피 매우 엿같은 상황이 발생했다. 엔티티 매핑을 한 후 발생하는 에러다. 현재 상황은 Payment 엔티티에 @ManyToOne + Lazy적용, Battery 엔티티에 @OneToMany가 적용된 상황 좌측은 단방향만 개통된 상황 (Battery의 @OneToMany가 없을 때) : Lazy에 따른 오류 우측은 양방향이 개통된 상황 : 순환참조 문제 해결 방법 : Dto에서 필드를 선언해서 내보낼 때, 엔티티를 바로 내보내지 말고, Dto를 내보내라한다. : 이게 옳은 방법인건지는 모르겠으나 필자는 이렇게 해결했다. 단일 객체 DTO 변환 방법 1. BatteryPayment클래스를 따로 만든다 2. 여기에 내가 필요한 값만 필드로 ..

    [SpringBoot] Caused by: java.sql.SQLSyntaxErrorException: Can't DROP 'FKpvill444mvu6ace1wvwpc9iob'; check that column/key exists 에러

    에러코드 Caused by: java.sql.SQLSyntaxErrorException: Can't DROP 'FKpvill444mvu6ace1wvwpc9iob'; check that column/key exists 원인 : 프로젝트에서 사용하지 않게된 엔티티(도메인)나 이름이 변경된 엔티티의 이전 이름에 해당하는 테이블이 DB에 잔존해서 발생 해결방법 : 바뀌거나 제거된 엔티티명에 해당하는 Table을 workbench에 들어가 Drop해주면 된다.