在我的用例中,我必須使用RequestDispatcher以將請求移除到部署在同一服務器上的另一個servlet。請求調度程序讀取包括之前的響應
public void doFilter(ServletRequest req, ServletResponse resp, FilterChain arg2) throws IOException, ServletException {
String generateRedirectUrl=FormURL((HttpServletRequest)req);
ServletContext context = ((HttpServletRequest)req).getSession().getServletContext();
ServletContext newContext = context.getContext("/myNewContext");
RequestDispatcher dispatcher = newContext.getRequestDispatcher(generateRedirectUrl);
dispatcher.forward(req, resp);
}
但我必須閱讀回覆,並在轉發前發送一些操作。
可能嗎?
你是說,你要修改的是由servlet您生成響應正在將請求轉發給?什麼樣的修改? – mmulholl
我必須讀取調度響應中的布爾值...然後我必須對其執行邏輯布爾操作,最後我必須重寫被轉發給客戶端的響應中的布爾結果。 – Alex
轉發的servlet使用寫入器還是輸出流?將嘗試拿出代碼示例來演示。 – mmulholl