2015-11-27 33 views
0

早上好。Spring MVC - POST請求後奇怪的重定向

我的控制器具有這種方法來保存到數據庫

@RequestMapping(value = { path+"/new" } , method = RequestMethod.POST) 
    public String saveLight(@Valid Luce luce, BindingResult result, ModelMap model, final RedirectAttributes redirectAttributes) { 

     if (result.hasErrors()) { 
      return path + "/luce"; 
     } 
     // Add message to flash scope 
     redirectAttributes.addFlashAttribute("css", "success"); 
     redirectAttributes.addFlashAttribute("msg", "Luce aggiunta correttamente"); 
     luceService.saveLuci(luce); 
     return "redirect:/"+path+"/"+luce.getIdLuce(); 
     } 

getIdLuce()是模型盧斯的吸氣劑。當我提交表單時,信息正確地發送到數據庫,但我被重定向到/ lights/0,因爲luce.getIdLuce()返回0(或null)值...

我沒有保存輸入值在idLuce的,這是一個簡單的自動遞增值

@NotNull 
@Id 
@Column(name="id_luce", unique = true, nullable = false) 
public Integer getIdLuce() { 
    return idLuce; 
} 

我做錯了什麼?謝謝

+0

你得到什麼錯誤? – reos

回答

1

@GeneratedValue註釋您的實體對象。這樣,當你堅持你的對象時,屬性'idLuce'將被設置。

@NotNull 
@Id 
@GeneratedValue 
@Column(name="id_luce", unique = true, nullable = false) 
public Integer getIdLuce() { 
    return idLuce; 
} 
+0

忘了把OK標誌!謝謝! – besmart