본문 바로가기

프로젝트/SpringBoot Side Project

(16)
Elastic Beanstalk 서버 시간 변경 배포해놓은 프로젝트를 테스트하던 중 서버 시간이 맞지 않아서 SSH 로 서버 시간을 설정해보겠습니다. CICD설정해놓은 yml 파일에 time 설정이 있는데 왜 안되는지 모르겠습니다. 일단 서버 시간변경이 급하니까 본론으로 들어가겠습니다. MobaXterm으로 ec2 퍼블릭ip4 주소를 이용해서 SSH로 접속한다. sudo rm /etc/localtime $ sudo ln -s /usr/share/zoneinfo/Asia/Seoul /etc/localtime 그리고 sudo vi /etc/sysconfig/clock 을 해서 Zone 값을 "Asia/Seoul" 로 바꿔주었습니다. sudo reboot를 했는데요, 시간은 그대로 입니다. ㅎㅎ.. 이미 환경설정 파일을 첨부해서 배포하는 방법도 시도해보았지..
트러블슈팅 failed to lazily initialize a collection of role: personal.blog.entity.User.authorities: could not initialize proxy - no Session 오류 발생 해결하기 이번에 blog 프로젝트를 수정하면서 권한을 여러개 주기로 결정했다. 권한을 엔티티로 만들고, User와 권한을 일대다로 매핑하고 @OneToMany(mappedBy = "user") List autorities = new ArrayList(); 로 받아왔더니 spring security가 Login처리를 하는 과정에서 지연로딩 프록시 초기화가 불가능한 문제가 발생했다. 문제 해결과정 1) Hibernate.initialize(authorities)메소드를 ..
blog ERD 허접한 수준의 ERD :) ... 블로그 기능추가를 위해 다시 엔티티를 모델링해보았다. Authorities를 다대다로 많이 하던데 다대다로 하기 싫어서 다대일로 풀어내려고 한다.
jwt - refresh token spring security 6 를 적용해서 jwt 토큰으로 login 처리를 하는 것은 인프런 강의를 참고해서 성공했다. 하지만 access token 처리만 하기 때문에 보안이 아쉬워서 refresh token을 사용하는 예제를 보여주는 도서를 따로 구입했다.
트러블슈팅 11/30 1. 문제정의 Junit에서는 분명히 회원가입이 잘되었는데, spring security 적용 및 api 호출로 웹에서 회원가입을 진행했을때, 403에러가 발생했다. 2. 사실수집 403 Forbidden 오류는 클라이언트가 요청을 서버에 전송했을 때, 서버가 해당 요청을 이해하고 있지만, 권한이 없어서 요청을 거부했음을 나타내는 오류이다. 3. 원인추론 spring security 6버전은 deprecated 된게 많아서 익숙치 않아서 그렇다고 생각했다. 근데 아니었다. passwordEncoder부터 차츰차츰 다시 적용해서 테스트해가면서 무엇이 문제인지 살폈다. 부트스트랩 템플릿을 적용해서 편하게 프론트 개발을 하려고 했는데, 템플릿js파일때문에 json으로 인코딩되지않음. 스프링 시큐리티..
카카오맵api https://devtalk.kakao.com/t/api/46856 지도 api 주소로 좌표 불러오는 기능 없어졌나요? 과거 daum map api 시절 addr2cord라는 이름의 메소드를 통해 주소로 해당 지점의 좌표(위도,경도) 값을 가져오는게 가능했던걸로 알고있습니다. 지금 doc에서는 해당 기능을 찾을 수가 없는데 혹시 없 devtalk.kakao.com 결국 또 카카오맵 api를 이용하기로 했다.(네이버api보다 무료이용량이 많음. ) Daum Postcode api : 별도 키가 필요 없음. 지도로도 위치 선택하면 주소 찾아올 수 있음. good
LocalDate 자료 참고 https://jeong-pro.tistory.com/163
기간 선택 캘린더 https://flatpickr.js.org/ flatpickr Introduction Introduction flatpickr is a lightweight and powerful datetime picker. Lean, UX-driven, and extensible, yet it doesn’t depend on any libraries. There’s minimal UI but many themes. Rich, exposed APIs and event system make it suitable for any flatpickr.js.org vanila js로 돌릴수 있는 캘린더를 찾아보다가 가볍고 UI 디자인도 괜찮은 라이브러리를 발견했다. 라이센스도 MIT라서 마음놓고 사용가능하다.