Home | Lego Power Miners! >>

Configuring TomCat and Pebble

In order to setup this blog I needed Tomcat, I'm well versed with IIS and Apache vhost configurations but it took a little bit of research and fiddling to get vhosts up and runnign with tomcat,  the only reason I had such a problem was that I wanted my tomcat data on a different partition instead of having all my data in the tomcat installation directory.

I found I had to adjust a "Java Options" setting from it's default of: "-Dcatalina.home=C:\Program Files\Apache Software Foundation\Tomcat 5.5"-Dcatalina.home=C:\Program Files\Apache Software Foundation\Tomcat 5.5 to "-Dcatalina.base=D:\Data\Tomcat"
Here's the relevent bits from my server.xml in case you're interested:

<Engine name="Catalina" defaultHost="default">
	<Host name="default" appBase="default/webApps" unpackWARs="true"
		autoDeploy="false" xmlValidation="false" xmlNamespaceAware="false">
	</Host>

	<Host name="localhost" appBase="localhost/webApps" unpackWARs="true"
		autoDeploy="false" xmlValidation="false" xmlNamespaceAware="false">
		<Alias>127.0.0.1</Alias>

		<Valve className="org.apache.catalina.valves.RemoteHostValve"
			allow="localhost,127.0.0.1" />
	</Host>

	<Host name="dominicclifton.name" appBase="dominicclifton.name/webApps"
		unpackWARs="true" autoDeploy="false" xmlValidation="false"
		xmlNamespaceAware="false">
		<Alias>www.dominicclifton.name</Alias>
	</Host>

</Engine>

Then I had to move the conf directory to d:\Data\Tomcat and also create "d:\data\<hostname>\webApps" for each vhost.

The next problem was the ${user.home} setting for Tomcat, on windows this defaulted to "C:\Documents and Settings\Default User". Apparently you can override this in the Catalina.properties file but I've not tried it, instead I point each app that needs it to a specific directory, e.g. in Pebble.properties i set "dataDirectory=D:/Data/Tomcat/<hostname>/data"

The above method works fine for me, but if anyone knows a better way of doing this please comment below!




Send a TrackBack