Как обрабатывать удаление RESTful в Spring MVC

Как мне правильно использовать удаление RESTful в контроллере Spring MVC? У меня есть DAO, который возвращает логическое значение при попытке удалить какой-либо элемент.

Я пытаюсь удалить элемент. Если все в порядке, просто показать список элементов (удаленного элемента больше не будет ). Если элемент не может быть удален, перенаправьте его на страницу сведений и объясните, почему его не удалось удалить.

Нужен ли мне какой-то особый статус ответа или что-то в этом роде? Является ли мой подход RESTful?

@RequestMapping(value = "items/{id}", method = RequestMethod.DELETE)
public String delete(@PathVariable("id") int itemId, Model model) {
    Item item = itemDao.get(id);

    // true -> can delete
    // false -> cannot delete, f.e. is FK reference somewhere
    boolean wasOk = itemDao.delete(item); 

    if (wasOk) {
        return "redirect:/items";
    }

    // will write to user which item couldn't be deleted
    model.addAttribute("item", item);
    return "items/error";
}
9
задан Xorty 26 April 2012 в 20:01
поделиться