I created a mostly empty dynamic web project in Eclipse.
He has
Web .xml
<?xml version="1.0" encoding="UTF-8"?> <web-app xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://java.sun.com/xml/ns/javaee" xmlns:web="http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd" xsi:schemaLocation="http://java.sun.com/xml/ns/javaee http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd" id="WebApp_ID" version="2.5"> <display-name>testprojekt</display-name> <welcome-file-list> <welcome-file>index.html</welcome-file> <welcome-file>index.htm</welcome-file> <welcome-file>index.jsp</welcome-file> <welcome-file>default.html</welcome-file> <welcome-file>default.htm</welcome-file> <welcome-file>default.jsp</welcome-file> </welcome-file-list> </web-app>
and I added context.xml to the META-INF folder
<?xml version="1.0" encoding="UTF-8"?> <Context> <Parameter name="companyName" value="My Company, Incorporated" override="false"/> </Context>
I exported this project as a WAR file. With the following structure:
user@system :$ tree . |-- META-INF | |-- MANIFEST.MF | `-- context.xml `-- WEB-INF |-- classes |-- lib `-- web.xml 4 directories, 3 files
When I deploy the project to a local tomcat (Apache Tomcat / 6.0.20), everything works as expected. The value context.xml is copied to / conf / Catalina / localhost and renamed to testprojekt.xml.
When I edit testprojekt.xml for:
<?xml version="1.0" encoding="UTF-8"?> <Context> <Parameter name="companyName" value="My BLAH Company, Incorporated" override="false"/> </Context>
I see the following result in the catalina.out file:
02.11.2009 13:21:35 org.apache.catalina.startup.HostConfig checkResources INFO: Undeploying context [/testprojekt] 02.11.2009 13:21:35 org.apache.catalina.core.StandardContext resourcesStart SCHWERWIEGEND: Error starting static Resources java.lang.IllegalArgumentException: Document base /opt/tomcat6/webapps/testprojekt 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:4048) at org.apache.catalina.core.StandardContext.start(StandardContext.java:4217) 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:630) at org.apache.catalina.startup.HostConfig.deployDescriptors(HostConfig.java:556) at org.apache.catalina.startup.HostConfig.deployApps(HostConfig.java:491) at org.apache.catalina.startup.HostConfig.check(HostConfig.java:1274) at org.apache.catalina.startup.HostConfig.lifecycleEvent(HostConfig.java:296) at org.apache.catalina.util.LifecycleSupport.fireLifecycleEvent(LifecycleSupport.java:119) at org.apache.catalina.core.ContainerBase.backgroundProcess(ContainerBase.java:1337) at org.apache.catalina.core.ContainerBase$ContainerBackgroundProcessor.processChildren(ContainerBase.java:1601) at org.apache.catalina.core.ContainerBase$ContainerBackgroundProcessor.processChildren(ContainerBase.java:1610) at org.apache.catalina.core.ContainerBase$ContainerBackgroundProcessor.run(ContainerBase.java:1590) at java.lang.Thread.run(Thread.java:619) 02.11.2009 13:21:35 org.apache.catalina.core.StandardContext start SCHWERWIEGEND: Error in resourceStart() 02.11.2009 13:21:35 org.apache.catalina.core.StandardContext start SCHWERWIEGEND: Error getConfigured 02.11.2009 13:21:35 org.apache.catalina.core.StandardContext start SCHWERWIEGEND: Context [/testprojekt] startup failed due to previous errors 02.11.2009 13:21:35 org.apache.catalina.core.StandardContext stop INFO: Container org.apache.catalina.core.ContainerBase.[Catalina].[localhost].[/testprojekt] has not been started
Why? Is this the expected result? What is the correct way to change parameters in context.xml ?
Thanks in advance. Yours faithfully,
Carsten
source share