Development/Java, JSP 6

GPKI 라이브러리를 이용한 암복호화 구현하기.

관공서에서 시스템 연계를 위해서는 개인정보 관련 문제때문에 데이터를 GPKI 를 이용해서 암복호화를 해야한다. 주무관을 통해서 요청하면 해당 api 와 도큐먼트를 받을 수 있는데 내용이 좀 부실하다. 구글링을 해도 gpki 성격상 자료가 많지 않거니와 연계 담당자도 처음부터 끝까지 자세히 알려주지 않는다. 어느정도 진행되면 조금 더 알려주고 또 어느정도 개발이 진행되면 조금 더 알려주고.. 하는 식이다. xx행정쪽으로는 미리 우리의 ~.cer, ~.key 파일정보를 보내주었다. xxx시청에서 xx행정시스템과 연계 테스트를 하면서 gpki 를 이용한 암복호화를 테스트했는데 진행 방법을 정리한다. 목적 :xxx시청 xxx 시스템이 xx행정시스템과 연계하기 위해서 데이터를 gpki 로 암복호화. 1. JNI ..

컴파일러 오류 발생.

서버쪽은 IntelliJ 로 개발하고 클라이언트는 eclipse 로 개발하고 있다. maven 은 IntelliJ 에서 설정/사용하기가 편하고 안드로이드 layout 은 eclipse 가 사용하기 편하다는 간단한 이유때문이다. -_- 얼마전부터 서버쪽 소스를 컴파일 할때마다 컴파일러 오류가 발생하고 있다. JDK 버전을 바꿔주면 괜찮아지길래 1.5 1.6 으로 바꿔주면서 사용하고 있었는데 한동안 잠잠하다가 오늘 또 컴파일러 오류가 발생하길래 JDK 버전을 바꿔 주었는데오 여전히 오류를 뱉어내고 있다. 한참을 실랑이 하다가 재부팅을 해도 마찬가지. 노트북의 뭔가와 충돌을 하는지 뭔 이유인지 모르겠다. 서버쪽과 클라이언트쪽을 같이 컴파일해서 올려서 테스트를 해보고 오류가 없으면 모두 설치해서 테스트 해볼텐데..

콜백 메서드란?

Call back Method 란? 비유가 적절한지는 잘 모르겠지만, 내가 상대방과 통화할 일이 있을때 전화해서 내 전화번호만 알려주고 끊으면 상대방이 나에게 전화해서 통화하는 것. 이와 비슷해서 콜백이라고 부름. 응용하자면, 프로세스가 시스템에 자신이 등록된 것을 알려주면 특정 상황에서 시스템이 프로세스를 호출하는 것. 그렇게 하기 위한 프로세스의 메서드를 콜백 메서드라고 한다.

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..

다국어지원용 한글변환

파일포멧을 UTF-8 로 변환해서 한글, 영어 등등을 지원하기 위해서는 한글도 변환해줘야 한다. 가장 간단한 방법이 JDK에 포함된 native2ascii 명령어를 사용하는 방법이다. 사용방법은 #native2ascii 파일명 수정할파일명 영문은 바뀌지 않고 한글만 변환된다. 만약 수정할 파일명을 정의하지 않으면 파일내용중에서 한글만 변환시키고 종료된다.

재실행 막기.

트랜잭션 처리 후 재실행(F5키, 뒤로가기 버튼 등등)을 막기 위해서는 세션값을 체크해서 처리한다. 일단 로그인하면서 세션을 생성해서 저장하고, JSP 페이지에 이렇게 세팅을 한다. 주의할 점은 sendRedirect.do 나 insertData.do 등의 모든 처리에서 세션값을 가져가야 한다. 대부분 sendRedirect.do 에서는 그냥 페이지만 이동하는 경우가 많다. 세션을 가져가느냐 아니냐에 따라서 sendRedirect.do / sendRedirectWithSession.do 이렇게 두개를 만들어서 사용하는것도 괜찮은 방법이다. 다음 컨트롤러에서 public void checkSessionAndResetToken(HttpServletRequest request) { HttpSession ses..