Tôi đang cố gắng để thích nghi với một số cũ xây dựng kịch bản để chạy với một cài đặt RPM của Tomcat 6, và tôi chạy vào như sau:
java.lang.IllegalArgumentException: Document base /var/lib/tomcat6/webapps/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(StandardContext.java:4086)
at org.apache.catalina.core.StandardContext.start(StandardContext.java:4255)
at org.apache.catalina.core.ContainerBase.addChildInternal(ContainerBase.java:791)
at org.apache.catalina.core.ContainerBase.addChild(ContainerBase.java:771)
at org.apache.catalina.core.StandardHost.addChild(StandardHost.java:526)
at org.apache.catalina.startup.HostConfig.deployDescriptor(HostConfig.java:637)
at org.apache.catalina.startup.HostConfig.deployDescriptors(HostConfig.java: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(LifecycleSupport.java:119)
at org.apache.catalina.core.ContainerBase.start(ContainerBase.java:1053)
at org.apache.catalina.core.StandardHost.start(StandardHost.java:722)
at org.apache.catalina.core.ContainerBase.start(ContainerBase.java:1045)
at org.apache.catalina.core.StandardEngine.start(StandardEngine.java:443)
at org.apache.catalina.core.StandardService.start(StandardService.java:516)
at org.apache.catalina.core.StandardServer.start(StandardServer.java:710)
at org.apache.catalina.startup.Catalina.start(Catalina.java:593)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
at java.lang.reflect.Method.invoke(Method.java:616)
at org.apache.catalina.startup.Bootstrap.start(Bootstrap.java:289)
Đây là ngạc nhiên như Tomcat không có trong /var/lib/tomcat6
, nó ở /usr/share/tomcat6
. Khi tôi tìm kiếm nơi này có thể đến từ, tất cả tôi thấy là sau đây trong một tập tin gọi là host-manager.xml
:
<Context docBase="${catalina.home}/webapps/host-manager"
privileged="true" antiResourceLocking="false" antiJARLocking="false">
</Context>
Bây giờ, tôi có $CATALINA_HOME
thiết lập để /usr/share/tomcat6
như nó phải được, và không có tài liệu tham khảo để /var/lib
bất cứ nơi nào trong ứng dụng web của tôi (bao gồm cả cấu hình) hoặc cài đặt Tomcat 6 của tôi, theo như tôi có thể nói. Vì vậy, những gì là ${catalina.home}
, và làm thế nào là /var/lib/tomcat6
nhận được thay thế cho nó?
Tôi đã bắt đầu bằng catalina.sh. Không khai thác nó để tìm hiểu lý do tại sao nó không sử dụng biến môi trường, nhưng vấn đề cụ thể này đã được giải quyết bằng cách cài đặt RPM của tomcat6-admin-webapps, đặt các tệp đó vào/var/lib nơi nó đang tìm kiếm chúng . –