19.6. Tomcat

다음은 Jakarta Tomcat 4.1.30과 5.0.19로 테스트한 내용이다.

$CATALINA_HOME은 Catalina (Tomcat)이 설치되어 있는 곳의 루트를 나타낸다.

$CATALINA_HOME/conf/server.xml 파일을 편집하여 <Engine> 섹션에는 오직 하나의 활성화된 <Realm> 입력사항만이 포함되도록 한다. 예제 realm 입력 내용은 다음과 같다:

      <Realm className="org.acegisecurity.adapters.catalina.CatalinaAcegiUserRealm"
             appContextLocation="conf/acegisecurity.xml"
             key="my_password" />

<Engine> 섹션에서 다른 <Realm>를 모두 제거하도록 한다.

$CATALINA_HOME/confacegisecurity.xml을 복사한다.

$CATALINA_HOME/server/libacegi-security-catalina-XX.jar을 복사한다.

다음 파일들을 $CATALINA_HOME/common/lib로 복사한다:

위 JAR 파일들(혹은 acegi-security-XX.jar) 중 어떤것도 여러분 애플리케이션의 WEB-INF/lib에 들어 있어서는 안된다. web.xml에 들어있는 영역 이름(realm name)이 가리키는 내용은 Catalina에서 문제가 되지 않는다.

컨테이너 어댑터를 Mac OS X에서 사용할 때 발생하는 리포트를 받은 적이 있다. 해결 방법은 아래와 같은 스크립트를 사용하는 것이다:

#!/bin/sh
export CATALINA_HOME="/Library/Tomcat"
export JAVA_HOME="/Library/Java/Home"
cd /
$CATALINA_HOME/bin/startup.sh

마지막으로 Tomcat을 재시작한다.