簡體   English   中英

手動處理Jersey / JAX-RS REST

[英]Handle Jersey/JAX-RS REST manually

我正在構建一個應用程序,我想攔截HTTP請求並決定是否將它們傳遞給JAX-RS實現進行處理。

我基本上有一個filter-and-front-controller-servlet組合,並希望servlet將路由委托給Jersey或我的“標准”路由器。

我可以看到很多使用Jersey作為servlet或啟動HTTP服務器的例子,但似乎沒有一種方便的方法來接受一個HttpServletRequest / HttpServletResponse對並說“在這里你去澤西,路由此我”。

我錯過了一些明顯的東西嗎

在這種情況下,我認為RequestDispatcher可能會有所幫助

RequestDispatcher對象可用於將請求轉發到另一個資源,因此您可以嘗試以下操作:

public class FrontServlet extends HttpServlet {
    @Override
    protected void doGet(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {
        ServletContext sc = this.getServletContext();
        if (someCondition) {
            sc.getRequestDispatcher("/jersey/servlet").forward(req, resp);
        }else{
            sc.getRequestDispatcher("/standard/router").forward(req, resp);
        }
    }
}

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM