아이폰 APP 알림 인증서 관련

아이폰 APP의 특징중 하나는 알리미다.  앱이 종료, 혹은 슬립상태일 때도 사용자에게 노티를 해 줌으로써 사용성을 향상 시킬 수 있다. APP의 알림을 보내기 위해서는 APP 별로 인증서가 필요하다. 이 인증서는 APP 별로 발급이 된다. 그럼 APP을 만들면 하나의 인증서만 있으면 되는가? 아니다. APP 개발자가 아닌 내가 알기로는 인증서는 하나의 APP 관련해서 총 3개의 인증서를 발급 받을 […]

JRebel

웹 애플리케이션 개발을 하는 나는 자바 소스나 프로퍼티성 파일이 변경이 될 경우에는 WAS로 사용하는 톰캣 서버를 리스타트 해야했다. 혹은 reloadable=”true”로 설정을 해서 톰캣이 변경사항을 인지하고 서버를 재시작하는 방법을 사용하곤 했다. 그런데, JRebel은 서버 재시작의 번거로움 없이 변경된 리소스를 인지하고 즉시 클래스 로더에 변경 정보를 반영해서 사용가능하게 해준다. 물론 변경하자마자 바로는 아니지만, 대에충 1~2초 정도면 반영이 […]

스프링 배치 구현체 FlatFileItemReader

스프링 프레임웍은 공통적인 문제의 해결 방법을 풀어주는 방법을 제공해준다. 그래서 개발자는 이러한 공통적인 문제가 아닌 비지니스 로직에만 집중할 수 있다.  그리고 비지니스 로직에서 유용할 수 있는 구현체를 제공하기도 한다. 이는 스프링 배치 프로젝트에서도 의외는 아니었다. 스프링 배치 프로젝트는 1.x 에서 2.x 로 버전 업 되면서 많은 것이 변했는데, 그런 변화를 document에 다 언급하지 못한 상태라 […]

fallback mechanism 라이브러리

지금 다니고 있는 회사에서는 퀵리뷰라는것을 진행하고 있다. 유용한 아티클등을 읽고 포인트만 찝어내서 공유하는 작업이다. 말이 ‘퀵’리뷰지 더 이상 퀵하지 않다. 왜냐하면… 자세한 이유는 생략한다. 어찌됐든 퀵리뷰를 했던 내용이 개발자 블로그에 올라갔다. 사실 저 글을 올린지 한달이 넘었다. 그래서 안 올라가나보다 했는데, 우여곡절(?) 끝에 올라갔다. 내가 올린 퀵리뷰의 포인트는 간단하다. ‘fallback mechanism 라이브러리’다. 사실 원문에서 언급한 […]

스프링 배치에서 기본 Job 흐름도

최근에 개인적으로 하는 스터디에서 스프링 배치에 대해 발표할 일이 있었다. 생각지도 못한 발표라서 급하게 준비하느라 깊이는 얇다. 하지만 그 중에서 기본 job 흐름도를 공유하려 한다. 스프링 배치 홈페이지에 보면 10여년간의 배치성 job을 분석했을 때 다음과 같은 표본(stereotype)이면 웬만한건 다 커버할 수 있다고 한다. 위의 그림에서 나오는 ItemReader, ItemWriter, ItemProcessor의 흐름을 보면 다음과 같다.  알아보기 […]

스프링 배치(Spring Batch)란?

스프링 배치(Spring Batch) 프레임웍에 대해서 공부하기 전에 먼저 그 정의부터 알아야할 필요가 있다.  Spring은 개발자라면 사용해보지는 않았더라도 들어는 봤을거라 생각해서 생략. 개인적으로 이름이나 타이틀은 그 본질적인 의미를 가장 잘 함축적으로 표현할것이라 생각해서 단어의 뜻을 찾아보았다. Batch로 검색하니  위키피디아에 많은 링크가 등장했다. 그 중에서 가장 가깝다고 생각하는 것을 하나 꼽았다. Batch Processing Batch processing is execution […]

나가수를 보고

한 때 무도빠였던 내가 식상함을 느끼고 예능을 멀리한지 꽤 됐다. 무도빠였던 시절에는 DMB 기기까지 준비해서 녹화방송인 프로그램을 정규 방송 시간에 챙겨보곤 했었지만, 이제는 집에 있을 경우에도 보지 않게됐다. 장기프로젝트, 감동프로젝트등 다양한 시도를 하긴 했지만 이내 식상함을 느껴버렸기 때문인듯 하다. 이런 내가 최근에 나가수(‘나는 가수다’)를 챙겨보고 있다. 우후죽순 생겨나서 TV 가요 프로그램을 독식하고 있는 아이돌 그룹의 […]

tomcat에서 한글 인코딩 문제 처리 경험 공유

tomcat 6.x 버전을 사용해서 서비스를 진행하고 있다. 인코딩 설정은 URIEncoding=”UTF-8″ 과 request.setCharacterEncoding()으로 설정해서 사용하고 있었다. 이 설정에 대한 내용은 이전에 포스트한 tomcat에서 GET 형태의 파리미터 인코딩 설정에서 설명이 되어있다. 위의 설정으로 한글을 문제없이 쓰고 있다가 갑자기 내가 담당하는 서비스(이제부터 편의상 A)와 B라는 서비스와 연동할 일이 생겼다. 연동 시나리오는 다음과 같다. 시나리오 1. A에서 B로 특정 […]

tomcat에서 GET 형태의 파리미터 인코딩 설정

톰캣 버전: 6.0 톰캣은 GET 형식의 파라미터를 인코딩하는 방법을 설정에서 제어할 수 있습니다. 가장 많이 사용되는것이 Connector 엘리먼트에 URIEncoding 값 입니다. <Connector port=”80″ protocol=”HTTP/1.1″ maxThreads=”150″ connectionTimeout=”20000″ redirectPort=”8443″ URIEncoding=”UTF-8″ /> 위와 같이 설정되어 있으면 모든 GET 형태의 파라미터를 tomcat안의 서블릿에 던져줄 때 자동으로 URIEncoding에 설정한 케릭터셋으로 URLDecoding을 합니다. 그리고 Connector 엘리먼트에 useBodyEncodingForURI 값이 있습니다. 위와 같이 […]

자바스크립트로 event trigger 하기

자바스크립트에서 어떤 동작을 조작하기 위해서 event발생하면 이를 제어하는 handler를 등록한다. 이러한 handler는 이벤트가 발생할 경우 동작을 하는데, 자바스크립트에서 인위적으로 이벤트를 생성해서 이를 트리거 시킬 수 있는 방법이 있다. 원문은 다음을 참조하자. [js] function fireEvent(element,event){ if (document.createEventObject){ // dispatch for IE var evt = document.createEventObject(); return element.fireEvent(‘on’+event,evt) } else{ // dispatch for firefox + others var […]