헤르메스 LIFE

[Error] Tomcat의 오류 본문

Exception

[Error] Tomcat의 오류

헤르메스의날개 2010. 9. 27. 18:16
728x90

문제는 Tomcat의 Startup.bat 실행 시 오류가 발생한다는데 있습니다.
host-manager 폴더와 manager 폴더가 없다는 겁니다.
Tomcat 5.5 버젼에서는 아래와 같은 오류가 발생하지 않았습니다.
6.x 버젼으로 버젼업되면서 뭔가가 달라졌다는 얘기인 듯 한데..
문제만 있지 해결방법은 없더군요.. ㅡㅡ;; (우리의 Naver와 Google에도 OTL... 
제가 영어가 짧아서 못 찾았을 수도 있습니다. ^^;;)

 

심각: Error starting static Resources
java.lang.IllegalArgumentException: Document base C:\AutoPlus\bin\Tomcat-6.0.29\
host-manager does not exist or is not a readable directory
        at org.apache.naming.resources.FileDirContext.setDocBase(FileDirContext.
java:142)
        at org.apache.catalina.core.StandardContext.resourcesStart(StandardConte
xt.java:4249)
        at org.apache.catalina.core.StandardContext.start(StandardContext.java:4
418)
        at org.apache.catalina.core.ContainerBase.addChildInternal(ContainerBase
.java:791)
        at org.apache.catalina.core.ContainerBase.addChild(ContainerBase.java:77
1)
        at org.apache.catalina.core.StandardHost.addChild(StandardHost.java:546)

        at org.apache.catalina.startup.HostConfig.deployDescriptor(HostConfig.ja
va:637)
        at org.apache.catalina.startup.HostConfig.deployDescriptors(HostConfig.j
ava:563)
        at org.apache.catalina.startup.HostConfig.deployApps(HostConfig.java:498
)
        at org.apache.catalina.startup.HostConfig.start(HostConfig.java:1277)
        at org.apache.catalina.startup.HostConfig.lifecycleEvent(HostConfig.java
:321)
        at org.apache.catalina.util.LifecycleSupport.fireLifecycleEvent(Lifecycl
eSupport.java:119)
        at org.apache.catalina.core.ContainerBase.start(ContainerBase.java:1053)

        at org.apache.catalina.core.StandardHost.start(StandardHost.java:785)
        at org.apache.catalina.core.ContainerBase.start(ContainerBase.java:1045)

        at org.apache.catalina.core.StandardEngine.start(StandardEngine.java:445
)
        at org.apache.catalina.core.StandardService.start(StandardService.java:5
19)
        at org.apache.catalina.core.StandardServer.start(StandardServer.java:710
)
        at org.apache.catalina.startup.Catalina.start(Catalina.java:581)
        at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
        at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.
java:39)
        at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAcces
sorImpl.java:25)
        at java.lang.reflect.Method.invoke(Method.java:597)
        at org.apache.catalina.startup.Bootstrap.start(Bootstrap.java:289)
        at org.apache.catalina.startup.Bootstrap.main(Bootstrap.java:414)
2010. 9. 27 오후 5:37:31 org.apache.catalina.core.StandardContext start
심각: Error in resourceStart()

일단의 해결방법은 appBase 에 있습니다.
Tomcat은 appBase를 "webapps"를 기본으로 하고 있습니다. 
정확하게는 Tomcat 6.x버젼부터는 %CATALINA_HOME%\webapps\host-manager 폴더와 manager 폴더를
찾고 있다는게 맞는것 같습니다. ( 찍었습니다. ㅡㅡㅋ )

Tomcat의 Server.xml 설정은 다음과 같습니다.

<Engine name="Catalina" defaultHost=" localhost">
      <Host name="localhost"  appBase="[WAS의 WEB Root]"
            unpackWARs="true" autoDeploy="false"
            xmlValidation="false" xmlNamespaceAware="false">
   <Context docBase="="[WAS의 WEB Root]"
            path="/" reloadable="true" antiResourceLocking="false"
            privileged="true" debug="1">
         <Resource name="jdbc/TIMS" auth="Container" scope="Unshareable"
                         type="javax.sql.DataSource"
                         driverClassName="oracle.jdbc.OracleDriver"
                         url="jdbc:oracle:thin:@IP주소:1521:ORA9"
                         username="아이디" password="패스워드" maxActive="20"
                         maxIdle="10" maxWait="-1"/>
   </Context>
      </Host>
</Engin>

위의 Server.xml 설정에서 appBase="[WAS의 WEB Root]"라고 설정합니다.
%CATALINA_HOME%\webapps\host-manager 폴더와 manager 폴더를
[WAS의 WEB Root] 아래에 복사합니다.

이렇게하고 다시 Tomcat을 재시작하면 위의 오류도 나타나지 않습니다.

728x90