簡體   English   中英

如何在Tomcat 8中設置上下文路徑

[英]How to set context path in Tomcat 8

我有一個名為FooBar.war的戰爭文件,現在我想將上下文路徑“ /”指向該Web應用程序。 這意味着用戶可以通過URL訪問Webapp: localhost:8080/為此,我在<catalina_home>/conf/Catalina/localhost/添加了一個名為ROOT.xml的文件,其中包含內容

<Context docBase="/opt/mywebapps/FooBar" path="" reloadable="true" />

我還將FooBar.war放到/opt/mywebapps/文件夾中,然后設置此文件夾的所有權限:

chmod -R 777 /opt/mywebapps/

啟動Tomcat服務器后,該服務器無法部署war文件:

1-Apr-2019 11:33:36.211 SEVERE [localhost-startStop-1] org.apache.catalina.core.ContainerBase.addChildInternal ContainerBase.addChild: start:
 org.apache.catalina.LifecycleException: Failed to start component [StandardEngine[Catalina].StandardHost[localhost].StandardContext[]]
    at org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:167)
    at org.apache.catalina.core.ContainerBase.addChildInternal(ContainerBase.java:754)
    at org.apache.catalina.core.ContainerBase.addChild(ContainerBase.java:730)
    at org.apache.catalina.core.StandardHost.addChild(StandardHost.java:734)
    at org.apache.catalina.startup.HostConfig.deployDescriptor(HostConfig.java:629)
    at org.apache.catalina.startup.HostConfig$DeployDescriptor.run(HostConfig.java:1839)
    at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:511)
    at java.util.concurrent.FutureTask.run(FutureTask.java:266)
    at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1149)
    at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624)
    at java.lang.Thread.run(Thread.java:748)
Caused by: org.apache.catalina.LifecycleException: Failed to start component [org.apache.catalina.webresources.StandardRoot@6023aae1]
    at org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:167)
    at org.apache.catalina.core.StandardContext.resourcesStart(StandardContext.java:4932)
    at org.apache.catalina.core.StandardContext.startInternal(StandardContext.java:5067)
    at org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:150)
    ... 10 more
Caused by: java.lang.IllegalArgumentException: The main resource set specified [/opt/mywebapps/FooBar] is not valid
    at org.apache.catalina.webresources.StandardRoot.createMainResourceSet(StandardRoot.java:748)
    at org.apache.catalina.webresources.StandardRoot.startInternal(StandardRoot.java:706)
    at org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:150)
    ... 13 more

如果您有任何解決辦法,請幫助我。

 <Context docBase="/opt/mywebapps/FooBar" path="" reloadable="true" /> 

而且我還將FooBar.war放到/ opt / mywebapps /文件夾中

請注意,您現在有/opt/mywebapps/FooBar.war ,當你引用/opt/mywebapps/FooBar (請注意“ .war”中的區別)

由於您不在Tomcat自己的webapps文件夾中,該文件夾(具有默認配置)將自動解壓縮WAR文件,因此Tomcat只是表示您所配置的位置根本不存在。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM