2011-10-13 46 views
5

我正在開發一個小型web應用程序。目標是創建一個帶有Ajax +一個servlet的歡迎頁面index.html來處理Ajax請求。web應用程序中的context.xml vs web.xml

雖然我以爲我會很好只用web.xml,但我不想部署到/,而是到/MyApp。 NetBeans的項目屬性提供了設置上下文路徑的選項,這有助於我部署到/MyApp。但是,它會自動添加一個/META-INF/context.xml文件,這有點令人困惑。

我的問題是:

1)我真的需要一個context.xml文件都部署到/MyApp,而不是/

2)如果對1)的回答是否定的,那麼如何完成與web.xml的相同呢?

3)究竟是什麼context.xmlweb.xml

回答

8

/META-INF/context.xmlTomcat-specific config file。它用於配置應用程序如何部署到Tomcat,其中包括它存在的上下文路徑。其他容器具有類似的文件,可以包含在容器配置的WAR中。回答你的問題:

  1. 不,嵌入式context.xml只是設置上下文路徑的一種方法,正如我所指出的,它只能在Tomcat中工作。在Tomcat中,默認行爲是將webapps部署到具有war文件名稱但不帶「.war」擴展名的上下文中。
  2. 您無法在web.xml中設置上下文路徑。這是您的應用程序的部署描述符。它配置你的應用程序,上下文路徑在你的應用程序外部。它屬於您正在部署應用程序的服務器/容器。配置上下文路徑總是在容器的配置中完成。
  3. 如果通過「config.xml」,你的意思是「context.xml」,那麼我想我已經回答了。如果沒有,請澄清你的問題。
+0

很好,它完美地闡明瞭這些概念。我認爲context.xml實際上與應用程序本身有關。謝謝。 – JVerstry

相關問題