개발중 spring framework를 사용하는 두개의 context를 하나의 서버에서 돌리니.. 다음과 같은 에러가 나타났습니다.
2008. 3. 6 오후 8:13:05 org.apache.catalina.core.StandardContext listenerStart
심각: Exception sending context initialized event to listener instance of class org.springframework.web.util.Log4jConfigListener
java.lang.IllegalStateException: Web app root system property already set to different value: 'webapp.root' = [C:\server\Tomcat 6.0\webapps\pa\] instead of [C:\server\Tomcat 6.0\webapps\sample1\] - Choose unique values for the 'webAppRootKey' context-param in your web.xml files!
webAppRootKey의 정의는 다음과 같습니다.
그러므로,
Web.xml에 정의한 다음부분
<context-param>
<param-name>log4jConfigLocation</param-name>
<param-value>/WEB-INF/log4j.xml</param-value>
</context-param>
에서 log4j가 로딩될 때 webAppRootKey를 정의하지 않았기 때문에 default값인 webapp.root가 중복이 되어 나타나는 에러입니다..
이런경우에는 에러 메시지의 내용처럼 web.xml에 다음과 같이 중복이 되지 않게webAppRootKey를 정의해주면 에러가 나타나지 않습니다..
<context-param>
<param-name>webAppRootKey</param-name>
<param-value>pa.root</param-value>
</context-param>
서버를 재기동하면 다음과 같은 로그를 볼 수 있습니다.
2008. 3. 6 오후 8:39:02 org.apache.catalina.core.ApplicationContext log
정보: Set web app root system property: 'pa.root' = [C:\server\Tomcat 6.0\webapps\pa\]
'spring' 카테고리의 다른 글
CharacterEncodingFilter (0) | 2008.04.14 |
---|---|
[책] 웹 개발자를 위한 스프링 2.5 프로그래밍 (0) | 2008.04.04 |
spring+ibatis+jsp+jstl (3) | 2007.10.11 |
spring aop+oracle procedure 에서의 transaction 처리.. (0) | 2007.10.05 |
spring aop without java interface (0) | 2007.09.10 |