본문 바로가기

이것저것

(514)
IntelliJ IDEA에서 파일 인코딩 설정 및 로케일 언어 출력. 요즘의 프로젝트의 파일 인코딩은 UTF-8이 기본이다. 다국어 지원의 문제도 있고 한국어 자체의 출력문제도 있어서 프로젝트 시작~! 하자마자 파일 인코딩을 UTF-8로 통일 하고 개발에 들어간다. ItelliJ에서는 setttings에서 파일인코딩을 설정하는 부분이 있다. 다국어 지원같은 경우 messages_ko.properties 파일을 한국어로 먼저 만들고 나서 영어나 중국어로 번역하는게 보통인데 문제는 한국어를 먼저 UTF-8로 인코딩하면 모두 유니코드로 깨져서 보인다는 것이다. 미리 원본을 만들어 놓으면 몰라도 그렇지 않은 경우 목록을 다시 작성해야 하는 번거로움이.. Intellij에서는 이런 불편함을 지원해주는 기능이 있다. 위의 IDE Encoding은 IntelliJ에서 생성하는 파일들을..
ORA-12519 오류발생. Oracle 10 g 에 iBATIS로 SQL 매핑하면서 개발중이다. 저번 프로젝트에서는 아무런 문제가 없었는데 이번엔 본격적인 개발기간에 들어가면서 ORA-12519 오류가 자주 발생한다. DB를 내렸다가 올리면 한동안은 괜찮은데 개발자 몇명이 붙어서 각 담당 모듈 테스트에 들어가면 로그인부터 오류가 발생해서 Could not open JDBC Connection for transaction; nested exception is java.sql.SQLException: Listener refused the connection with the following error: ORA-12519, TNS:no appropriate service handler found The Connection descrip..
기계식 키보드 유저가 되다. 얼마전까지 집에서 외장키보드로 IBM 울트라나브 트레블을 사용했다. 회사에서 업무용으로 사용하다가 집에서 쓸려고 가져다 놓은 것이었는데, 업무용으로 필요해서 울트라나브 텐키모델로 다시 구입했었다. 울트라나브 모델로만 총 2대 구입. 두 모델의 차이점은 트레블은 키감이 좀 찰랑거리는 느낌이어서 부드러운 팬터그래프의 전형적인 느낌이고 키압이 낮아서 빠른 타이핑이 가능했다. 또 그걸 예상하고 울트라나브 텐키를 구입했는데 이게 왠걸! 펜터그래프의 이름이 무색할만큼 키압이 높아서 조금만 오래 타이핑하면 손등이 아프다. 그러다보니 오타는 얼마나 많이 많은지.. 어렵게 구했지만 아깝다고 계속 사용하다가는 내몸이 피곤해지는 터라 보름만에 과감하게 매각결정. 회사에 돌아다니는 잉여키보드를 구했는데 전형적인 저가 삼성 맴..
Thinkpad 정리. 다 팔았다. 그동안 집에 쌓여 있던 Thinkpad와 관련 배터리, 부품들.... (참, T60용 팜레스트는 아직 남아있다.) 혹시 나중에 고쳐서 사용해볼까 하고 남겨놨던 240Z, R30 등등 부품용으로 모두 떨이로 판매. 수리비도 만만찮고 수리해서 정상작동한다고 해도 실사용하기엔 performance가 너무 떨어지고해서 과감하게 매각. 필요한 사람이 구입해서 고치던지, 아니면 분해해서 부품으로 팔던지 그건 알아서 하고. 외부나갈때 필요할까해서 구입했던 예비용 배터리도 모두 판매. 일년동안 필요없는걸 보니 앞으로도 필요없을 듯하다. 그동안 모아왔던게 전부 5대였나? 6대였나? 이제 남은건 실사용하는 X61과 T60. 난 X61 쓰고 와이프는 T60 쓰고. 서로 사용하는 노트북이 따로 있으니 싸울일도 없..
Google Talk 파일 보내기 기능. 구글토크를 사용중인데, 언어별로 조금 차이점이 있다. 집에서 사용중인 노트북엔 XP가 설치되어 있고 회사에서 사용중인 노트북엔 Vista가 설치되어 있는데 집에서 잘 사용중인 구글토크가 회사에선 자꾸 이상작동을 하길래 왜 이런가 했더니 한글판 구글토크가 버전업이 조금 늦어서 문제가 있다는 글이 올라와 있었다. 영문판 구글토크와 한글판 구글토크의 가장 큰 차이점은 바로 파일보내기 기능의 유무. 그외 한글도 당연히 지원하며 다른 사용상의 차이점은 없다고 보면 된다. 언어별 구글토크를 어디서 개발하는지는 몰라도 한글판의 버전업에 조금만 더 신경을 써줬으면.... [영문판 구글토크 다운받기]
Hot Deploy 적용하기. 파일 편집시에 특히 JSP 페이지 같은 경우는 기존에 WAS의 tmp 디렉토리에 가서 해당 페이지를 열어서 수정한 뒤 오류가 없으면 소스에 적용하는 방법을 사용했다. 문제는 수정하는 동안은 IntelliJ를 사용할 수 없어서 디버그 기능도 사용할 수 없다. Java 소스같은 경우는 다시 디플로이하는 귀찮음이 있었고. IntelliJ 에서는 핫디플로이 기능을 제공한다. 물론 IntelliJ에서 설정한 WAS에서만 작동하지 따로 run.bat 으로 실행한 경우는 적용되지 않는다. 빨간색의 Build on frame deactivation 메뉴는 Java소스, JSP페이지 둘 다 적용되고 오른쪽의 Build Web resource only 메뉴는 웹쪽만 적용된다.
Message Bundle 사용하기 다국어를 사용하기 위해서 모든 메시지를 message 프로퍼티 파일에 모아둔다. main-servlet.xml 에서 /WEB-INF/messages/messages 위의 예는 모든 messages 파일들을 WEB-INF 디렉토리 밑의 messages 디렉토리에서 관리하고 있다는 뜻이다. ReloadableResourceBundleMessageSource 은 messages 파일이 수정될때 WAS를 재가동 하지 않고도 reloading 할수 있도록 해준다. 인터벌은 cacheSeconds에서 설정한다. Please wait for the web application to start. index 페이지에서 바로 index.do를 타도록 설정하고, public ModelAndView index(HttpServ..
Resource bundle을 만들기 위한 two-letter ISO language code 다국어 처리를 할때 Client가 어떤 Locale을 가지고 있느냐에 따라서 알맞은 Resource Bundle을 선택하기 위해서 messages 파일을 만들때 국가코드를 붙여준다. 예) messages_ko.properties 참고: Resource Bundle 이란? Java Properties File 을 뜻한다. ---------------------------------------------------------------------------- Technical contents of ISO 639:1988 (E/F) "Code for the representation of names of languages". Typed by Keld.Simonsen@dkuug.dk 1990-11-30 Mino..