1
我在java中設置了一些servlet。它們由路徑名稱標識。但如果請求的不存在,我想調用我的「默認servlet」。我試圖以這種方式解決它(請參閱我的代碼)。我測試了成功,但我不知道這是否會成爲不穩定(如「的servlet一個」被轉發到由某些線程管理或由OS別的默認的servlet ...)默認的servlet - 這是否正常工作?
Server server = new Server(8080);
WebAppContext context = new WebAppContext();
context.setContextPath("/");
HandlerCollection handlers = new HandlerCollection();
handlers.addHandler(context);
RequestLogHandler requestLogHandler = new RequestLogHandler();
handlers.addHandler(requestLogHandler);
server.setHandler(handlers);
context.setResourceBase("WebContent");
context.addServlet(new ServletHolder(new MyFirstServlet()), "/servlet one/*");
context.addServlet(new ServletHolder(new MySecondServlet()), "/servlet two/*");
context.addServlet(new ServletHolder(new DefaultServlet()), "/*");
context.setInitParameter("dirAllowed", "true");
server.start();
我用java和jetty庫。
感謝您的幫助。
是否有理由按代碼執行所有操作,而不是使用web.xml描述符編寫WAR文件? –
這似乎碼頭具體?告訴你正在使用哪個servlet引擎。 – h22
對不起,我忘了告訴你:我使用碼頭庫。 @David:目前我沒有任何web.xml。這是一個普通的Java項目。使用其他庫會更好嗎? – wassermine