발생일: 2009.03.25 문제: 게시판에서 상세 보기 후 목록으로 돌아가기 위해 목록 검색에 대한 parameter를 uri 형태로 묶어 parameter로 전달하고 있었다. ex) 브라우저에서 서버로 요청을 보낼 때 자동으로 인코딩이 되기 때문에, 이 값을 서버를 통해 응답으로 보낼 경우, 한글로 적은 '가나다' 값이 인코딩 된 값으로 표기된다. 하여 응답받은 값을 브라우저에 표시하면 '가나다' 대신 인코딩 된 값이 나온다. 해결책: java의 URLEncoder / URLDecoder 객체를 사용한다. 서버에서 searchParam에 대한 값을 받았을 때에 URLDecorder로 decoding 하여 응답한다.
출처: http://www.coderanch.com/t/58696/Struts/Struts-Forward-Redirect-with-Parameter 스트럿츠에서 uri를 붙여 redirect 하고자 할 때! final ActionForward successAction = mapping.findForward("yay"); ActionForward modifiedSuccessAction = new ActionForward(); modifiedSuccessAction.setName(successAction.getName()); modifiedSuccessAction.setPath(successAction.getPath()+"?widgetId="+widgetId); modifiedSuccessAction.set..
출처: http://javaservice.net/~java/bbs/read.cgi?m=appserver&b=engine&c=r_p&n=1195004374&p=3&s=t tomcat web.xml 에 보면 360 세션 timeout 설정 부분이 있습니다. 위와 같이 6시간을 설정해 놓았는데도.. 계속해서 세션이 끊어집니다. * 저 이 어떻게 작동을 하는지 알고 싶습니다. 1. 웹에 설정한 시간만큼 액션이 없을 때 tomcat에서 세션이 끊어지는 걸로 알고 있습니다. 맞는지요? 2. 웹에서 계속해서 리플래시 되는 화면이 있는데.. 이것도 계속 액션 작용을 하는 것인지요?? 3. 웹이 한 도메인으로 되어 있지만... 실제로 웹서버는 2대(1,2)로 동작하고 있습니다. 로그인 하면 한쪽에만 붙어 있는 것이 아니..
http://cafe.naver.com/eitfree.cafe?iframe_url=/ArticleRead.nhn%3Farticleid=224 JSTL에서 forEach와 forTokens을 실제 사용하다 보면 JSTL만으론 해결이 안 될 거 같은 상황이 있는데요. JSTL 책을 읽다 보니 몇몇 상황에서는 JSTL만으로 쓸 수 있도록 한 게 있어 간단히 정리해 올려 봅니다. 목록(Collection) 중에 일부에 대해서만 어떤 처리를 하고 싶을 때가 있습니다. 예를 들면, 앞에 5개까지만 출력한다 라든지 짝수번째만 출력한다든지요. 이럴 경우는 다음 Attribute를 이용하면 됩니다. * begin: 반복에 사용될 것 중 첫번째 항목의 Index. 0부터 시작한다. 정의되지 않으면 0. * end: 반복에..
http://cafe.naver.com/sqler.cafe?iframe_url=/ArticleRead.nhn%3Farticleid=830 java Generics 1 - 소개이 글은 http://java.sun.com/j2se/1.5/pdf/generics-tutorial.pdf 에 대한 손을 좀 본 번역본입니다. 손을 봤다는 게 직역하지 않고, 뺄 거는 빼고 더할 거는 더하고 풀어 쓸 거는 풀어 쓰고 했단 소립니다. 사실 원본이 말이 쓸데없이 많아서 많이 짤라냈습니다. 자바 1.5에서는 자바 언어에 대한 몇가지 확장 기능이 추가되었다. 그 중 하나가 Generics이다. 이 글은 generics를 소개하기 위한 글이다. C++의 템플릿과 같은 다른 언어와 비슷하다. Generics는 타입에 대한 추상성..
출처: http://lazyartist.springnote.com/pages/788330EL(expression language)형식 ${...} EL 표현식은 항상 중괄호로 묶고 제일 앞에 달러($)기호를 붙입니다. 도트(.) 연산자 사용 ${person.name} 표현식에서 도트 연산자 왼쪽은 반드시 맵 또는 빈이여야 함 표현식에서 도트 연산자 오른쪽은 반드시 맵의 키이거나 빈 프로퍼티여야 합 오른쪽에 오는 값은 식별자로서 일반적인 자바 명명 규칙을 따라야 합니다. [] 연산자 사용도트 연산자는 왼쪽에는 맵이나 빈 밖에 올 수 없으며, 오른쪽에 오는 것도 자바 명명 규칙을 따라야 합니다. 그러나 []연산자는 왼쪽에 리스트나 배열도 올 수 있습니다. ${musicList["something"]} []연..
원문: http://source.egloos.com/811940 jar(Java Archive)에 대해서 1. jar파일이란 : jar파일은 archive파일이다. 즉 여러개의 파일을 하나의 파일로 묶는 jar명령을 사용하여 생성된다. 이 파일은 winzip에서 열어 볼 수 있으며, winzip에서 열어보면 여러개의 파일들이 디렉토리 정보를 가진채 들어 있다. (아무 jar파일을 직접 클릭해 열어 보시라) 2. zip 파일과 다른 점 : winzip과 다른점은 압축되어 있을수도 있고, 그냥...하나로 묶어놓은 파일일수 도 있다. 그래서 jar 파일을 archive파일이라 볼수 있다. 이렇게 archive파일로 묶는 이유는 자바로 개발한 여러클래스 파일들 또는 패키지 파일이 있을때, 이를 하나로 묶어두면,..
원문: http://jcjang.tistory.com/entry/ResourceBundle%EC%9D%98-%EC%82%AC%EC%9A%A9%ED%95%98%EA%B8%B0 properties 파일은 classes 아래 폴더를 하나 생성하여 관리하는 게 좋겠다. =================================================================================================== ResourceBundle의 사용하기 1. API 위치 java.util.ResourceBundle JDK 1.1 부터 지원 2. 역할 프로그램 배포시 고정된 자원과 변화하는 자원이 있다. 게시판 배포를 예로 든다면 안에 소스는 대부분 고정된 자원이다. 하지만 사용자마다..