1
如何在不調用getWriter()
方法的情況下檢查響應(ServletResponse
)是否包含任何內容 - G。在過濾器?方法可能被用在程序以後別的地方調用(不 -檢查ServletResponse是否有任何內容
public void doFilter(ServletRequest request, ServletResponse response, FilterChain chain) throws IOException, ServletException {
// Only do that if there is really some content
PrintWriter out = response.getWriter();
它可能發生的response.getWriter()
:或者換句話說:過濾器應只有在有已經寫東西到流修改內容這個過濾器,例如用於文件下載)。在這種情況下,第二次調用將失敗,因爲流已經打開......
我其實並不十分理解不能在responce對象上調用getWriter兩次,只要流沒有關閉。爲什麼這是不可能的? – sl3dg3
我不確定你的意思是*無法兩次調用getWriter *。是否拋出異常? – Bart
我更正了:我不能在同一個響應中調用getwriter()和getOutputStream()(如果我沒有記錯的話,會導致IllegalStateException),我不太明白爲什麼... – sl3dg3