我有一個servlet過濾器,我想在Jetty中映射到http://127.0.0.1:8888/。我已經使用url模式/*
放置了一個servlet過濾器映射。但是,該過濾器未被調用。我也嘗試用/
映射。它也不起作用。這是如何造成的,我該如何解決這個問題?如何在Jetty上將/ servlet過濾器映射到/ *上?
回答
如果你的名字你的戰爭root.war
將被部署到根/上下文。
2件事情,首先,我使用碼頭,因爲它是eclipse的GWT-GAE插件中的默認服務器,所以我不知道如何做到這一點。其次,我不認爲GAE使用碼頭,所以我怎樣才能解決GAE問題。 – fernandohur
考慮問另一個問題,以便其他人可以幫助您使用GWT和GAE特定項目。這個問題是通用的,並且根據我們所知,在詳細情況下得到了回答。 –
的Jetty web-app deployment doc提到,WEP的應用程序可以打包成root.war
有根上下文/
在碼頭的每個應用程序部署到它的上下文 - 這意味着它有斜線後某一部分 - 即http://127.0.0.1:8888/context/ - 你的servlet映射realitve最後斜線 - 而不是之前的上下文
的一個正如其他答案中所提到的,您必須將該應用程序部署爲root.war以克服此問題。
可選,你可以$JETTY_HOME/webapps
下創建名爲root
目錄和Web應用程序的內容複製到$JETTY_HOME/webapps/root
您可以重定向從「/」到「/ urlToRedirect」的請求,並通過特殊的servlet處理「/ urlToRedirect」。像例如:
public static void main(String[] args) throws Exception {
Servlet frontend = new Frontend();
Server server = new Server(8080);
ServletContextHandler context = new ServletContextHandler(ServletContextHandler.SESSIONS);
context.addServlet(new ServletHolder(frontend), "/index");
context.addServlet(new ServletHolder(frontend), "/auth");
ResourceHandler resource_handler = new ResourceHandler();
resource_handler.setDirectoriesListed(false);
resource_handler.setResourceBase("static");
RewriteHandler rewriteHandler = new RewriteHandler();
rewriteHandler.setRewriteRequestURI(true);
rewriteHandler.setRewritePathInfo(true);
rewriteHandler.setOriginalPathAttribute("requestedPath");
RedirectRegexRule rule = new RedirectRegexRule();
rule.setRegex("/");
rule.setReplacement("/index");
rewriteHandler.addRule(rule);
HandlerList handlers = new HandlerList();
handlers.setHandlers(new Handler[]{rewriteHandler, resource_handler, context});
server.setHandler(handlers);
server.start();
server.join();
}
- 1. Servlet過濾器url映射
- 2. 如何使用guice-servlet將過濾器映射到servlet?
- 3. servlet/servlet映射和過濾器/過濾器映射之間的區別?
- 4. jetty servlet將uri映射到文件
- 5. 映射過濾器和servlet在吊帶
- 6. 的java:在過濾器上和servlet映射
- 7. servlet過濾器映射重疊
- 8. 將過濾器映射到jsp
- 9. 將jetty ResourceHandler映射到URL
- 10. 如何在Guice Servlet中使用servlet-name進行過濾器映射?
- 11. 在映射的時間戳上過濾
- 12. Java/Jetty:如何將過濾器添加到嵌入式Jetty
- 13. web.xml:如何將domain/xx/*映射到servlet?
- 14. 將JSP映射到servlet
- 15. 即使servlet映射不存在,請求如何通過過濾器?
- 16. 我怎麼可以在Servlet過濾器映射標籤
- 17. 使用帶有Jetty的Guice Servlet將路徑映射到Servlet而不使用web.xml
- 18. 過濾器映射問題
- 19. 我的servlet映射破壞我的過濾器
- 20. Servlet過濾器將在無限循環時在映射FORWARD用於JSF
- 21. 在未映射的列上使用條件過濾器
- 22. 如何將多個上下文映射到Jetty中的同一個war文件?
- 23. 將過濾器映射到Tomcat7中webapp的上下文根目錄
- 24. 在Tomcat中將URL映射到FrontController servlet
- 25. MockMvc達到@Controller類雖然servlet映射過濾
- 26. 在AngularJS上的對象映射而不是陣列上過濾
- 27. servlet url映射
- 28. 一個servlet或過濾器/ XXX/YYY/ZZZ動態映射到類XxxYyyZzz.java
- 29. Servlet過濾器 - 上下文初始化
- 30. 當我打開/home.xhtml時,不會調用映射到/ home的Servlet過濾器
它是一個tomcat服務器嗎?您可以嘗試將您的應用捆綁爲root.war並進行部署。 – srkavin
實際上,沒有...它是一個碼頭 – fernandohur