지난번에는 Spring의 기본 LocaleResolver인 AcceptHeaderLocaleResolver 사용법에 대해서 살펴봤다. 이건 메세지만 다국어로 분기를 했을 뿐 아무것도 처리하지 않은 환경에서 사용하기 적합하고 이번에 다룰 SessionLocaleResolver 는 실제로 많이 사용되는 LocaleResolver이다. 말 그대로 Session에 Locale 정보를 박아 넣고 이를 통해 다국어를 처리해주는 역할을 한다고 보면 된다. 어떻게 사용하는지 살펴보도록 하자. (단 사전에 Locale 별로 messageSource를 가지고 있는 환경은 구성해 놓도록 하자. ) LocaleResolver 설정 Config 파일에서 LocaleResolver에 대한 설정을 넣는다. @Bean public ..
MySql을 연동할 때 The server time zone value ‘KST’ is unrecognized or represents more than one time zone 이런 오류가 발생한다면 명시적으로 time zone을 지정해서 해결할 수 있다. AS-IS url jdbc:mysql://xx.xx.xx.xx:3306/testDB TO-BE url jdbc:mysql://xx.xx.xx.xx:3306/testDB?serverTimezone=UTC 이런식으로 url에 serverTimezone을 설정해주면 된다. 추가적으로 인코딩 설정도 이와 같이 해줄 수 있다. jdbc:mysql://xx.xx.xx.xx:3306/testDB?characterEncoding=UTF-8&serverTimezon..
폐쇄망(DMZ 내부)에서 MySql을 설치해야 한다. 보통 DB가 있는 서버는 폐쇄망에서 구성을 한다. 방법은 인터넷이 되는 환경에서 설치에 필요한 파일을 받아서 폐쇄망인 서버로 옮기고 거기서 설치를 진행을 해야한다. (필자의 환경은 CentOS 7 이다. ) 인터넷이 되는 서버에서 할 일과 안되는 서버에서 할 일을 나눠서 작성했다. 1. 인터넷이 되는 서버 MySql 다운로드 및 설치 공간 생성 $ mkdir /var/tmp/mysql $ mkdir /var/tmp/mysql-install mysql-install은 다운로드 파일 임시 공간 MySql 다운로드 및 설치 $ yum install --downloadonly --installroot=/var/tmp/mysql-install --release..
프로젝트를 하다 보면 생각지도 많은 요건들이 튀어나온다. Springboot Framework을 써서 개발을 했는데 이걸 다른 WAS를 사용해서 기동을 하고 싶다는 요건도 있었다. Springboot는 내장 WAS를 사용하고 있는데 굳이 이걸 두고 다른 WAS를 사용하는게 이해는 잘 안가지만 뭐 어쩌겠나.. 예전에 썼던 Spring 프로젝트를 Springboot로 전환하기 의 거꾸로 된 버전이라고 할 수 있겠다. 거꾸로는 생각보다는 간단했다. pom.xml 변경 spring-boot-starter-tomcat의 scope를 provided로 변경을 해야 한다. 만약 내가 spring-boot-starter-tomcat을 dependency로 선언을 안했어도 이거는 기본으로 되어 있는거라 scope 변경을..
org.apache.catalina.webresources.Cache.getResource []에 위치한 리소스를 웹 애플리케이션 []을(를) 위한 캐시에 추가할 수 없습니다. 왜냐하면 만료된 캐시 엔트리들을 없애버린 이후에도 여유 공간이 충분하지 않기 때문입니다. 캐시의 최대 크기를 증가시키는 것을 고려해 보십시오. Tomcat을 기동할 때 위와 같은 구문들이 막 올라가며 정신을 혼란스럽게 만든다. 말 그대로 톰캣에 설정한 캐시 크기가 부족하다는 것이다. 톰캣의 캐시 크기를 늘려주면 된다. Tomcat 설치경로 > conf > context.xml 파일 WEB-INF/web.xml WEB-INF/tomcat-web.xml ${catalina.base}/conf/web.xml 5번째 줄의 이 부분을 추가..
이클립스를 사용하면 어플리케이션을 WAR로 빌드를 할 필요도, Tomcat에 배포를 할 필요도 없어서 이런 빌드 및 배포에 대한 개념을 잡기 어렵다. 이클립스의 편리함을 잠시 버리고 직접 서버에서 작업을 한다는 생각으로 진행을 해보자. Tomcat 설치 일단 Tomcat을 설치해야 한다. Tomcat은 JAVA의 version, Servlet Spec 등을 고려해 다운받아야 한다. 내게 맞는 Tomcat의 버전을 확인했다면 아래의 공식 사이트에서 다운로드를 받는다. Apache Tomcat® - Apache Tomcat 10 Software Downloads Welcome to the Apache Tomcat® 10.x software download page. This page provides down..
톰캣을 윈도우에 설치하고 startup.bat 파일로 톰캣을 구동해보면 다음과 같이 인코딩이 깨지는 현상이 있다. 07-Jun-2021 17:47:29.270 ?뺣낫 [main] org.apache.catalina.startup.VersionLoggerListener.log ?쒕쾭 踰꾩쟾 ?대쫫: Apache Tomcat/9.0.46 07-Jun-2021 17:47:29.286 ?뺣낫 [main] org.apache.catalina.startup.VersionLoggerListener.log Server 鍮뚮뱶 ?쒓컖: May 8 2021 17:35:52 UTC 07-Jun-2021 17:47:29.287 ?뺣낫 [main] org.apache.catalina.startup.VersionLoggerLis..
Jenkins Job을 구성하며 Execute Shell로 Jenkins가 설치된 서버에 특정 명령을 날리려고 하였다. 아무것도 아니고 그냥 /app/jasypt 라는 폴더 밑에서 작업을 하려고 했는데 다음과 같은 오류가 발생했다. 분명 jenkins가 설치된 서버에 들어가서 /app/jasypt 라는 경로에 들어갔을때는 존재하는 폴더이고 권한 또한 알맞게 들어가 있었다. 하지만 위와 같이 cd: can't cd to 라는 오류가 발생하며 발생하며 접근이 되지 않을때는 혹시 jenkins가 docker로 설치가 되지는 않았는지 확인을 해보자. docker로 설치가 되었다면 volume으로 지정한 곳에 필요한 파일을 위치시키고 작업을 진행하도록 하자. 끝!