메타 데이터에 csrf 토큰값이 없을 때 cannot read properties of undefined (reading 'tolowercase')와 같은 오류를 발생시킨다. 이는 AJAX로 서버 요청을 할 때, undefined나 null인 객체가 있어서 발생한다. html 내부에 메타 데이터가 있는지 확인한다. 서버로 요청할 때, 헤더에 값을 넣어주고 있는지 확인한다. 2024. 3. 5. 403 에러, 스택 오버플로우, ... 회원가입 일부 로직에서 서버에 폼을 요청하지 않고 일부분만 요청하기 위해 구식 기술이긴 하지만 AJAX 비동기 통신을 사용하여 진행하려고 한다. 통신 과정에 있어서 몇 가지 에러를 만났고 해결 과정을 기록해두려고 한다. 403 Forbidden AJAX 요청 시에 403 Forbidden이 발생했다. 나는 스프링 시큐리티를 사용하고 있어 해당 url에 대한 접근 권한을 모두 허용해주었지만 지속해서 403 에러가 발생했었다. 그래서 더 찾아보니 csrf 토큰이 누락되고 있어서 발생하고 있었고 해당 부분을 disable 해주려 했지만 내 통신 방식이 현재 SSR로 구성되어 있기 때문에 서버 세션을 이용해야해서 해당 토큰이 필수라는 생각이 들었다. JWT 토큰 방식으로 세션을 이용하지 않았다면 disable해.. 2024. 3. 3. css 적용과 불러오지 못할 경우 생각보다 단순한 부분인데 쉽게 찾아내질 못해서 오랜 시간을 허비했다. 다음에도 이런 경우가 생긴다면 잊지 않기 위해 기록해두려고 한다. css 적용 나만 그런지는 모르겠지만 thymeleaf-layout-dialect 의존성을 주입 받으면서 css를 어떻게 적용해줘야할지 감이 하나도 잡히지 않았었다. layout을 나누기 전엔 헤더 부분에 link를 삽입했었는데 layout을 나누니 헤더 부분에 어떻게 추가해줘야할지 몰랐었다. 생각보다 단순했다. fragment 코드를 써주면 해결됐다. 이렇게 추가해서 css 파일을 불러오는 것은 해결할 수 있었다. css 파일이 불러와지지 않았다 두번째로 부딪혔던 것은 css 파일이 불러와지지 않았다. 그래서 생각한 것이 현재 나는 spring security를 적용 .. 2024. 3. 3. 데이터베이스 charset 값으로 인한 문제 SQL Error: 1366, SQLState: 22007 incorrect string value: '\xec\xb5\x9c\xec\x8a\xb9... JPA를 통해서 데이터베이스 유저 테이블을 생성하는 도중 해당 에러코드를 뱉어냈다. 부가적으로 다음과 같은 것을 확인할 수 있는데 이는 인코딩 과정에 저장이 문제 생겼다는 뜻이다. 실제로도 여기엔 없지만 에러를 가르키는 곳이 'name'이었고 name에는 한글이 들어가고 있었다. 일일이 바꿔줬다 처음엔 방법을 몰라서 일일이 컬럼 하나하나 수정을 했다. 한 번도 이런 일이 없었다 생각했는데 다시 생각해보니 여태까지 DB를 직접 CREATE했었기에 볼 수 없었던 것이다. charset 값을 ALTER한다. JPA를 통해서 생성한다면 이 자체에서는 어떻게 할.. 2024. 3. 3. Enum 클래스 값이 숫자로 저장될 때 사용자인지 유저인지 역할을 주어지게 하려고 Enum 클래스를 사용했다. 문자열 "USER"로 저장되는 것을 의도했지만 0 또는 1로 저장되는 일이 발생했다. Entity에서 수정해야한다. package com.example.pcmoa.user.entity; import com.example.pcmoa.config.entity.BaseEntity; import com.example.pcmoa.user.entity.dto.UserSignUpDto; import com.example.pcmoa.user.entity.repository.UserRole; import groovyjarjarantlr4.v4.runtime.misc.NotNull; import jakarta.persistence.*; import l.. 2024. 3. 3. CI/CD로 AWS 배포를 구축하면서 발생한 것들 퍼블릭 IPv4 DNS 접근이 안됨 조금 찾아보니 8080 포트에 인바운드 규칙이 적용안되있는 걸 파악했다. 해당 부분에 접속한다. 다음과 같이 인바운드 규칙을 추가한다. 그러면 8080 포트에 대해 모든 접속을 허가해주었기 때문에 정상적으로 동작한다. Gradle 버전 오류 https://aisi1004.tistory.com/842 빌드시 --warning-mode all 경고 없애기 빌드시 --warning-mode all 경고 없애기 Deprecated Gradle features were used in this build, making it incompatible with Gradle 7.0. Use '--warning-mode all' to show the individual deprecatio.. 2024. 2. 28. 이전 1 2 다음