Spring MVC を使用しました。セッション属性値を次のように設定します
@RequestMapping(value = "/home", method = RequestMethod.GET)
public String initHome(Model model) {
if (!model.containsAttribute("clientObject")) {
model.addAttribute("clientObject", createDefaultClient());
}
return "homeMenu";
}
ホームメニューのURL(/home)をクリックするとうまくいきます。しかし、家に帰らなかった場合、「セッション属性clientObjectが必要です」というエラーが表示されます
だから私はコントローラーのコンストラクターでセッション属性を設定することにしました
@Autowired
public MyController(Model model) {
if (!model.containsAttribute("clientObject")) {
model.addAttribute("clientObject", createDefaultClient());
}
}
それはエラーとも言います
org.springframework.beans.factory.UnsatisfiedDependencyException: Error creating bean with name 'myController
'
RequestMapping も好きで使って設定してみました
@RequestMapping(value = "/", method = RequestMethod.GET)
public void initController(Model model) {
if (!model.containsAttribute("clientObject")) {
model.addAttribute("clientObject", createDefaultClient());
}
}
このメソッドも最初は呼び出されません私のcointrollerは次のように見えます
@RequestMapping("/sample")
public class MyController {
..
..
コントローラーのコンストラクターで sessionAttribute 値を設定することは可能ですか? またはセッション属性を最初に設定する他の方法はありますか?
よろしくお願いします。