FreeMarker не видит переменную, если она находится в операторе if. Пружинный ботинок Mvc - PullRequest
0 голосов
/ 29 января 2020

Это мой шаблон входа

<#import "parts/common.ftlh" as c>
<#import "parts/login.ftlh" as l>
<@c.page>
    <div class="mb-1">
    ${message!}
    </div>
    <@l.login "/login" false/>
</@c.page>

Если метод "model.put" в операторе if, freemarker не видит переменную сообщения.

    @GetMapping("/activation/{code}")
    public String activation(Map<String, Object> model, @PathVariable String code) {
        boolean isActivated = userService.activateUser(code);

        if(isActivated) {
            model.put("message", "User successfully activated!");
        } else {
            model.put("message", "Activation code is not found!");
        }

        model.put("message", "User successfully activated!");
        return "login";
    }

Даже это, здесь я в любом случае вставляю сообщение, оно до сих пор его не видит. Если я удалю оператор if, он будет работать нормально. Это также не работает с model.addAttribute. Как это исправить?

...