我無法讓我的請求過濾器被觸發。我將jetty 9.1作爲嵌入式服務器運行。請求過濾器在Embedded Jetty的Jersey 2中不工作
import javax.ws.rs.container.ContainerRequestContext;
import javax.ws.rs.container.ContainerRequestFilter;
import javax.ws.rs.ext.Provider;
@Provider
public class MyFilter implements ContainerRequestFilter {
@Override
public void filter(ContainerRequestContext arg0) throws IOException {
System.out.println("HEY HO");
}
}
我在ResourceConfig中註冊了這個類,也嘗試註冊包。它被忽略。這是一個錯誤,還是我錯過了什麼?
這是我如何開始碼頭:
Weld weld = new Weld();
WeldContainer container = weld.initialize();
URI baseUri = UriBuilder.fromUri("http://localhost/").port(8080).build();
ResourceConfig config = ResourceConfig.forApplicationClass(MyApplication.class);
Server server = JettyHttpContainerFactory.createServer(baseUri, config);
(MyApplication的延伸ResourceConfig並在構造函數調用this.package(...)
和this.register(MyFilter.class)
你能告訴我們如何配置/啓動Jetty嗎? –
是的,更新的問題。 –