2016-09-06 99 views
0

我正在爲REST服務進行身份驗證。使用Jersey Rest API獲取Spring安全性的語法錯誤

因此,如果用戶未經身份驗證,那麼我想以「未經身份驗證的用戶身份」作爲repsonse以JSON格式發送用戶。

下面是我的代碼。我已經將內容類型設置爲APPLICATION_JSON,然後我收到郵遞員工具上的語法錯誤響應。我可以在plainText或Xml中看到確切的錯誤,但無法在JSON中看到響應。

有沒有人可以幫助我從這個問題脫身請。

@Override 
public void commence(HttpServletRequest request, HttpServletResponse response, 
     AuthenticationException authException) throws IOException { 

     response.setStatus(HttpServletResponse.SC_UNAUTHORIZED); 
     response.setHeader("Connection", "keep-alive"); 
     response.setContentType(MediaType.APPLICATION_JSON); 
     String msg = authException.getMessage(); 
     response.getOutputStream().println("{ \"error\": \"" + msg+ "\" }"); 
     } 
} 

回答

0

我認爲你正在做它在錯誤的方式在ServeletResponse類中的方法語法是:

無效的setContentType(java.lang.String中類型)

所以它應該是這樣的

response.setContentType("application/json;charset=UTF-8"); 

希望這會有所幫助。

+0

我真的這樣做的方式是錯誤的...創建pojo類的xmltype並在JSON中發送響應 – ashishl