2013-05-28 96 views
0

我在我的Spring MVC的測試控制器:Spring MVC的控制器測試+ JSON響應錯誤

@Test 
public void consultaPorIdJson() throws Exception{ 
    mockMvc.perform(get("/timesheet/consultaporidjson/{id}", 1L)) 
      .andExpect(status().isOk()) 
      .andExpect(content().contentType(TestSupport.APPLICATION_JSON_UTF8)) 
      .andExpect(content().string("{\"id\":1,\"latitude\":\"30.448660206791608\",\"longitude\":\"-44.29684999999995\"}")); 

當我嘗試運行我的測試,我得到一個錯誤:

java.lang.IllegalStateException: Cannot set error status - response is already committed 

我認爲這是約2k(我認爲)的迴應,但我不知道我該怎麼辦才能解決它:-(

回答

0

該網址在你的測試之外工作嗎?我懷疑它不工作,因爲錯誤表明你有在你的實現中問題在哪裏當代碼已經寫入響應中時,他的代碼試圖改變狀態。

+0

我沒有嘗試用完我的測試,因爲我沒有做jsp。我沒有使用jsp構建,我只放置了REST。當我試着在我的控制器中只返回「new MyClass()」時,測試運行沒有問題。但是當我把我的物體充滿時,我有這個問題。 – user812612

+0

不需要jsp。它的一個休息網址,所以只需在瀏覽器中鍵入或使用郵遞員。另外如果你顯示你的控制器代碼,那麼這將有所幫助。 –