Eclipse에서 주로 빈 동적 웹 프로젝트를 만들었습니다.tomcat 6의 context.xml 이해
그것은
- 없는 서블릿
- 없는 JSP 파일 을 가지고
은 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>
내가 그 META-INF
폴더에 context.xml
을 추가
<?xml version="1.0" encoding="UTF-8"?>
<Context>
<Parameter name="companyName" value="My Company, Incorporated" override="false"/>
</Context>
이 프로젝트를 WAR 파일로 내 보냈습니다. 다음과 같은 구조로 :
프로젝트를 로컬 Tomcat (Apache Tomcat/6.0.20)에 배포 할 때 모든 것이 예상대로 작동합니다. 즉, context.xml은/conf/Catalina/localhost에 복사되고 testprojekt.xml로 이름이 변경됩니다.
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
왜이다 : 나는 catalina.out에 다음과 같은 출력을 볼
<?xml version="1.0" encoding="UTF-8"?>
<Context>
<Parameter name="companyName" value="My BLAH Company, Incorporated" override="false"/>
</Context>
:
나는에 testprojekt.xml을 편집
? 이것이 예상 된 결과입니까?context.xml
에서 매개 변수를 변경하는 올바른 방법은 무엇입니까?
미리 감사드립니다. 감사합니다,
나는 그 질문을 이해하지 못한다. 나는 "testprojekt.xml을 편집 할 때"부분 뒤에 설명 텍스트가 누락되었다고 생각합니다. 적어도 나는 예외 메시지가 공정하게 설명 할 수 있다고 말할 수있다. 그대로 가져 가라. – BalusC
코드 샘플을 볼 수 있도록 이스케이프하십시오. –
두 개의 testprojekt.xml 파일을 자세히 살펴보십시오. 두 번째 값에 BLAH 문자열을 추가했습니다. 값을 변경 한 후에는 내 웹 응용 프로그램이 이러한 새로운 값에 액세스 할 수있을 것으로 기대됩니다. 하지만 저장을 한 후에 예외가 생기기 때문에이 부분까지 올 수 없습니다. 그리고 나는 예외를 이해하지 못한다. 아니면 내 접근법에서 잘못된 점이있다. – Carsten