同じJettyサーバーから静的ファイルとThriftサービスを提供しようとしています。今まで私は次のコードを持っています:
val server = new Server();
val connector = new SelectChannelConnector();
connector.setPort(4567);
server.addConnector(connector);
val servlet_handler = new ServletContextHandler(server,"/thrift",ServletContextHandler.SESSIONS);
servlet_handler.addServlet(new ServletHolder(new SomeThriftServlet()), "/thrift/*");
val resource_handler = new ResourceHandler();
resource_handler.setWelcomeFiles(new String[]{ "index.html" });
resource_handler.setResourceBase(".");
val handlers = new HandlerList();
handlers.setHandlers(new Handler[] { resource_handler, servlet_handler, new DefaultHandler() });
server.setHandler(handlers);
server.start();
server.join();
静的ファイルは問題なく提供されますが、Thriftサービスは404エラーを出し続けます。私は何が間違っているのですか?
注:静的ファイルを提供するコードはこの質問から取得され、「val」タイプはプロジェクトlombokによって処理されますが、現在のコードの方が読みやすいと思うので、そのままにしておきました。