Spring MVC会话变量未声明为会话变量

时间:2017-11-15 11:37:06

标签: java spring spring-mvc

我正在开发一个Spring MVC项目,我将mymeleaf用于我的html页面。我在VariableSessionController中创建了一个会话变量。但是,当我使用#session(对于thymeleaf中的会话变量)在我的html页面中调用会话变量时,它将无法工作。但是如果我将其称为模型变量,它就可以工作。然后我尝试在调用其他控制器之后得到我的会话变量,但他没有找到我正在调用的资源。

这是我的控制器,我创建会话变量

@Controller
@SessionAttributes("country")
public class VariableSessionController extends AbstractController {

    @ModelAttribute("country")
    public Country country() {
       Country country = new Country();
       country.setCodeCountry("FR");
       return country;
    }
}

这是我称之为控制器的地方。

@Controller
public class FrontpageController extends VariableSessionController {

    @Autowired
    private ConsulterInformationsFinancieres infosFinancieres;

    @RequestMapping(value = "/")
    public String welcome(Model model) {
        model.addAttribute("version","V1.1");
        return PageTemplates.INDEX;
    }

}

这是第二个控制器,我正在调用我的会话变量。

@Controller
public class AdvancedSearchController extends AbstractController {

    @RequestMapping(value = "/recherche", method = RequestMethod.GET)
    public String init(@RequestParam Map<String, String> requestParams, Model model) {
        String debug = String.valueOf(model.containsAttribute("country"));
        logger.info(debug); // return false
        model.addAttribute("label", "label");
        return PageTemplates.ADVANCED_SEARCH;
    }
}

感谢您的帮助!

0 个答案:

没有答案