You are viewing a plain text version of this content. The canonical link for it is here.
Posted to users@tomcat.apache.org by Rick Mann <rm...@latencyzero.com> on 2003/03/08 00:00:29 UTC
Configuration Home must be a directory! : /usr/local/apache2
When starting Tomcat 4.1.21 I get the following exception in the
catalina.out log:
> ServerLifecycleListener: Creating MBean for NamingResources
> org.apache.catalina.deploy.NamingResources@309516
> 14949 [main] ERROR digester.Digester - Begin event threw exception
> java.lang.reflect.InvocationTargetException
> at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
> at
> sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.ja
> va:39)
> at
> sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccesso
> rImpl.java:25)
>
> ...
>
> Caused by: java.lang.IllegalArgumentException:
> BaseConfig.setConfigHome(): Configuration Home must be a directory! :
> /usr/local/apache2
> at
> org.apache.ajp.tomcat4.config.BaseJkConfig.setConfigHome(BaseJkConfig.j
> ava:329)
> ... 39 more
>
I have modified my server.xml file to be very straightforward. However,
I've changed the appBase part of the single Host element to point to a
different directory that is to contain .xml Context files.
The implication is that Tomcat is trying to configure a JK connector,
but I have only two Coyote connectors set up, one for requests on port
80, the other on 443:
> <!-- Define a non-SSL Coyote HTTP/1.1 Connector on port 80 -->
> <Connector
> className="org.apache.coyote.tomcat4.CoyoteConnector"
> port="80"
> minProcessors="5"
> maxProcessors="75"
> enableLookups="true"
> redirectPort="443"
> acceptCount="10"
> debug="5"
> connectionTimeout="20000"
> useURIValidationHack="false" />
>
> <!-- Note : To disable connection timeouts, set connectionTimeout
> value to -1 -->
>
> <!-- Define a SSL Coyote HTTP/1.1 Connector on port 443 -->
>
> <Connector
> className="org.apache.coyote.tomcat4.CoyoteConnector"
> port="443"
> minProcessors="5"
> maxProcessors="75"
> enableLookups="true"
> acceptCount="10"
> debug="5"
> scheme="https"
> secure="true"
> useURIValidationHack="false">
>
> <Factory
> className="org.apache.coyote.tomcat4.CoyoteServerSocketFactory"
> clientAuth="false"
> protocol="TLS"
> keystoreFile="<somewhere>"
> keystorePass="<password>" />
>
> </Connector>
> Interestingly, it works fine if I point appBase at the directory
> containing that directory. That is to say, this works:
> <Host
> name="localhost"
> debug="5"
> appBase="/Volumes/Data/Users/rmann/Sites"
> unpackWARs="true"
> autoDeploy="true">
But this does not (it gets the exception above):
> <Host
> name="localhost"
> debug="5"
> appBase="/Volumes/Data/Users/rmann/Sites/tomcat-webapps"
> unpackWARs="true"
> autoDeploy="true">
And since I've been experimenting, neither does this;
> <Host
> name="localhost"
> debug="5"
> appBase="webapps"
> unpackWARs="true"
> autoDeploy="true">
>
This is on Mac OS X 10.2.4, which has no /usr/local/apache2 directory.
On my Linux box, which does have /usr/local/apache2, I don't get this
problem. However, why does it work for one appBase but not another?
TIA,
Rick
---------------------------------------------------------------------
To unsubscribe, e-mail: tomcat-user-unsubscribe@jakarta.apache.org
For additional commands, e-mail: tomcat-user-help@jakarta.apache.org