다시 톰캣 4.1을 사용해보면서 찾은 것들. 그리고 다시 기억을 살린 것 들.
- sample build.xml : install, remove, reload와 같은 기본적인 웹 애플리케이션 동작을 위한 task들을 정의함. 기존의 url을 입력하면 자동 재시작된다거나 하는 것들이 계속 지원되는지는 잘 모르겠음.
- JSPC : 웹 애플리케이션 수동 컴파일(jsp 파일들)을 지원함.
- 여전히 파서는 sax를 쓴다. 따라서 dtd순서와 엘리먼트 순서가 정확히 안맞으면 에러가 발생함.
- catalina.out에 System.out과 System.err이 모두 리다이렉팅 되는 듯. 예전에는 분리되서 나왔던 것 같은데???
- sample build.xml을 위한 taskdef 클래스들이 lib디렉토리에 jar로 있다. 이것을 ant의 lib디렉토리에 복사하면 taskdef를 바로 끌어다 쓸 수 있음. (ant의 확장성을 확인할 수 있었다… 하여간 머리좋은 사람들이 오픈소스도 하는 듯.)
- 반드시 잊어서는 안되는 것 : 컨넥션 풀링 관련 소스는 항상 $CATALINA_HOME밑에 common 밑의 lib나 classes에 넣자. 절대 잊지 말자. 안그러면 풀이 여러개 생성되어 서버가 바로 죽는다. 웹 애플리케이션의 수정->서버 리로드->클래스로더 재생성->싱글톤 클래스의 인스턴스들이 다수생성되기 때문. 이러한 점은 ‘java의 singleton이 진짜 singleton이냐?’ 라는 글에서(물론 영문) 다루고 있는데, 그 글이 어디있는지는 이미 잊은지 오래임.
- ANT가 느리다. 예전에도 사실 느렸음. 서버가 느려서 일까?
더는 생각 안남..