본문 바로가기

tomcat

(10)
WTP의 Server View 사용하기 WTP의 Server View가 불편해서 이제까지 MyEclipse를 사용했었습니다. 어쩌다 보니(라이센스 문제지요..ㅡ.ㅡ;) 다시 Eclipse를 사용하게 되어 덩달아 WTP를 사용하게 되었습니다. 몇 년전 안좋은 추억만 있던 WTP의 Server View 점검해보니 사용할만 하더군요. eclipse는 europa입니다. JEUS Plug-in 때문에 ganymede 사용안했는데 europa에서도 JEUS Plug-in은 잘 안되는군요. ㅠㅠ 조만간 다시 바꾸던지..원.. depoly를 .metadat\.plugins\org.eclipse.wst.server.core#tmp~ 이쪽으로 하는문제(이게 파일이 많아지면 너무 느리고 가끔씩 에러가 나와서요)는 그냥 속편하게 Server Option에서 Se..
Tag Library Function 이전 포스팅에 있던 2008/12/31 - [java] - Custom Tags in JSP Pages가 tomcat6에서 잘되던게 jeus5에서 실행되지 않는다. 질문을 올려도 답도 없고(짜증..) 그래서 이방식으로 바꾸었다. servlet spec 2.4인데 web.xml에 따로 설정해준것은 없다. java method는 static이어야 한다. java class package kr.co.test.common; import java.util.Calendar; import java.util.Date; public class TagFunctions { public static String stringShorten(String inputString, int limitLength) { if (inputSt..
Logging in Tomcat with Log4j Tomcat 사용시 찍히는 로그는 default로 JDK의 java.util.logging을 사용하고 있으나, log4j를 사용해서 찍고 싶은 생각이 들었다. Tomcat 홈페이지에 가서 검색해보니 방법이 나와 있었다. Tomcat 버전은 6.0.16 이다. http://tomcat.apache.org/tomcat-6.0-doc/logging.html ① log4j.properties파일을 $CATALINA_HOME/lib에 만들어 넣는다. log4j.xml을 넣어도 상관없다. ② 1.2버전 이상의 log4j를 다운받아 log4j-1.2.**.jar $CATALINA_HOME/lib에 넣는다. commons-logging.jar는 필요없어 보이지만 같이 넣어준다. 로깅 구현체가 바뀌어도 소스 수정할 필요..
ClassLoader를 이용한 서버 종류 알아내기 현재 프로젝트가 개발은 Tomcat으로, 서버는 JEUS를 사용하고 있습니다. 이런 환경을 제가 만든건 아니고 ㅡ.ㅡ; EJB개발하는것도 아닌데 JEUS가 너무 무거우니 간단하게 그냥 tomcat가자는 다른분의 의견이 받아들여진 것이었죠. Servlet spec 2.4를 기준으로 작업을 하니 웬만한건 양쪽다 먹는데 JNDI로 datasource를 가져오는 부분의 방법이 서로 틀리더군요. Spring에서 datasource정의하는 부분도 JEUS, Tomcat용으로 따로 사용을 하곤 했죠. 이건 그냥 Spring 설정파일 바꾸는거니 그런대로 할만 했습니다. 그러다가 Spring+Ibatis조합을 안통하고 그냥 JDBC 코딩을 해야 될 상황이 생겼는데 이때는 무지하게 귀찮아지더군요. 컴파일을 새로해야 되니 ..
Tomcat과 JEUS에서의 EL Tomcat 6.0에서는 잘 돌아가는 jsp파일이 jeus 5.0으로 옮겼더니 아래 문장 때문에 selected 다음과 같은 에러가 발생했습니다. java.lang.NumberFormatException: For input string: "B01" 그래서 jsp가 컴파일된 java파일의 위치를 찾아가 보니, _jspx_th_c_if_4.setTest(((java.lang.Boolean)jeus.servlet.jsp.el.JeusExpressionEvaluator.evaluate("${param.organization2 == 0}", java.lang.Boolean.class , pageContext.getVariableResolver(), null)).booleanValue()); 구문이 실행되고 있었습..
서블릿 보안 3 Realm을 database로 설정해보겠습니다. 서블릿 보안관련 두번째 포스팅의 예제를 그대로 활용하겠습니다. 사용할 table을 다음과 같이 생성합니다. CREATE TABLE users ( user_name VARCHAR(15) NOT NULL PRIMARY KEY, user_pass VARCHAR(15) NOT NULL ); CREATE TABLE user_roles ( user_name VARCHAR(15) NOT NULL, role_name VARCHAR(15) NOT NULL, PRIMARY KEY (user_name, role_name) ); 생성된 table에 data를 입력합니다. INSERT INTO users (user_name, user_pass) VALUES ('aircook', ..
서블릿 보안 2 Tomcat 6.0으로 폼기반 인증방식을 적용해보겠습니다. Web.xml(DD)에 다음과 같이 항목을 추가하였습니다. 서블릿 보안 첫번째 포스팅에서 적용한 DD파일에서 추가된 부분은 회색으로 색칠되어 있습니다. tester FORM /loginPage.jsp /loginError.jsp test web resource /* GET POST tester NONE 이제 테스트용으로 사용할 test1.jsp를 다음과 같이 작성합니다. DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"> test1.jsp test1.jsp login이 성공하면 아래 값이 보임.. request.getRemoteUser() : request.isUserInRole("tes..
서블릿 보안 1 서블릿 보안의 4 요소 인증(Authentication) 인가(Authorization) 비밀보장(Confidentiality) 데이터 무결성(Data Integrity) Tomcat 6.0으로 테스트 진행했습니다. Tomcat의 Realm(인증정보가 저장되어 있는 장소를 의미)은 conf/tomcat-users.xml파일을 다음과 같이 tester라는 역할과 aircook이라는 사용자를 정의하여 aircook에게 tester라는 역할을 주었습니다. 이부분은 각 컨테이너마다 다릅니다.