0
我在我的servlet中使用了一個(簡單的)基本認證,它適用於Jetty 7.6服務器,但是使用Tomcat 6.0.35我在嘗試發送未經授權的響應時收到錯誤顯示在瀏覽器中的用戶名/密碼形式:HTTP基本認證:Tomcat vs Jetty
java.lang.IllegalStateException
org.apache.catalina.connector.ResponseFacade.sendError(ResponseFacade.java:421)
的代碼在我的servlet是這樣的:
response.setHeader("WWW-Authenticate", "Basic realm=\"" + realm + "\"");
response.sendError(HttpServletResponse.SC_UNAUTHORIZED);
的代碼示例的第二行出現的錯誤。 我沒有在web.xml中使用<安全約束>。它應該是一個非常非常簡單的認證。
任何想法爲什麼Tomcat不工作,但碼頭呢?
在response.sendError之後,你會做什麼?你寫了什麼給servlet輸出流?請發佈與您的回覆管理相關的任何代碼。 –
不,在這兩行之前或之後沒有寫入響應。我很困惑爲什麼它可以在Jetty中工作,但不在Tomcat中。謝謝。 – chrise
@chrise在servlet之前可能運行的任何過濾器怎麼樣?你可以發佈完整的堆棧跟蹤嗎? –