2016-05-01 65 views
1

我有幾個問題。ServletContextHandler和WebAppContext之間的Jetty區別及其用法

  1. WebAppContext和ServletContextHandler之間的主要區別是什麼。
  2. 我的應用程序有頁面和寧靜的服務。 ServletContextHandler可以用於Rest服務而不是WebAppContext嗎? (這意味着ServletContextHandler更好地處理Servlet來管理對restful服務的調用/請求嗎?但是我遇到了使用ServletContextHandler運行JSP的方法)有什麼優點和缺點?
  3. 是否有任何缺點,如果我使用兩個上下文:WebAppContext加載JSP和其他靜態內容(如js,css)和ServletContextHandler來處理請求到平靜的請求?

回答

2
  1. WebAppContext代表傳統的Web應用程序就像一場戰爭文件時,ServletContextHandler映射到一個servlet
  2. 如果你的休息服務是由一個servlet的支持,那麼當然,一個ServletContextHandler可以用來堆在休息服務。 JSP支持是一個servlet,所以你可以這樣運行它。唯一真正的優點或缺點是WebappContext將事件的所有自動部署和佈線與web.xml結合在一起......如果您不需要,那麼請不要使用它並自行連線。
  3. 不是,但如果您只是使用WebappContext作爲jsp和靜態資源,那麼我只會使用JSPServlet和DefaultServlet作爲靜態內容。

有很多不同的方法來做你想要做的事情。如果你願意直接處理servlet實例,那麼完全避免WebAppContext的整個概念。還有一件事要注意,WebappContext還爲已部署的Web應用程序提供了類加載器隔離,因此可能會或可能不會成爲您感興趣的因素。

+0

感謝jesse的回答。我試圖只使用ServletContextHandler來處理JSP和其他可視對象(js,css等)。但沒有一個嘗試是成功的。 Internet中的大部分示例都是關於使用WebAppContext配置的JSP。一些ServletContextHandler for JSP的文檔和示例沒有工作,其他人也面臨相同的問題。如果有一個工作的託管項目(例如:github)用於通過ServletContextHandler實現的JSP,請讓我擁有。 –

相關問題