
こちらの記事を参考にTodoリストを作成していたところ、
package com.example.project_todolist.; import com.example.project_todolist.TodoItemForm; import com.example.project_todolist.TodoItemRepository; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Controller; import org.springframework.web.bind.annotation.ModelAttribute; import org.springframework.web.bind.annotation.RequestMapping; import org.springframework.web.bind.annotation.RequestMethod; import org.springframework.web.bind.annotation.RequestParam; import java.util.Optional; @Controller public class HomeController { @Autowired TodoItemRepository repository; @RequestMapping public String index(@ModelAttribute TodoItemForm todoItemForm, @RequestParam("isDone")Optional<Boolean> isDone) { todoItemForm.setDone(isDone.isPresent() ? isDone.get() : false); todoItemForm.setTodoItems(this.repository.findByDoneOrderByTitleAsc(todoItemForm.isDone())); return "index"; } @RequestMapping(value = "/done", method = RequestMethod.POST) public String done(@RequestParam("id") long id) { Optional<Todo> item = this.repository.findById(id) ; item.setDone(true); //cannot resolve method this.repository.save(item); return "redirect:/?isDone=false"; } @RequestMapping(value = "/restore", method = RequestMethod.POST) public String restore(@RequestParam("id") long id) { Optional<Todo> item = this.repository.findById(id); item.setDone(false); //cannot resolve method this.repository.save(item); return "redirect:/?isDone=true"; } @RequestMapping(value = "/new", method = RequestMethod.POST) public String newItem(Todo item) { item.setDone(false); this.repository.save(item); return "redirect:/"; } }
item.setDoneの部分でcannot resolve method setDone(boolen)と出てしまいます。
この問題を解決できないのですが、どのようにすればエラーを解決できますでしょうか?
ご教授よろしくお願いいたします。
回答3件
あなたの回答
tips
プレビュー