You need to set up a context within the servlet to provide the infrastructure the app needs:

<Host name="localhost"  appBase="webapps"
            unpackWARs="true" autoDeploy="true"
            xmlValidation="false" xmlNamespaceAware="false">
        <Context docBase="GeoMessagingServer" path="/GeoMessagingServer" reloadable="true" source="GeoMessagingServer.war">
          <Resource auth="Container" driverClassName="org.sqlite.JDBC" maxActive="8" maxIdle="4" name="jdbc/generaldb" password="dbpassword" type="javax.sql.DataSource" url="jdbc:sqlite:/data/acsmobile/geomessagingserver/data.sqlite" username="dbusername"/>
          <Parameter name="imageRepository" value="/var/lib/tomcat6/webapps/GeoMessagingServer/img"/>
          <Parameter name="urlPrefix" value="http://www.cl.cam.ac.uk/research/dtg/ubicomp11"/>
        </Context>
</Host>
