LoginView с PolymerTemplate не распознает параметр ошибки - PullRequest
0 голосов
/ 07 февраля 2019

У меня есть LoginView, который я в основном скопировал из стартового проекта хлебобулочных изделий.

Когда я запускаю приложение хлебобулочных изделий и пытаюсь войти в систему с неправильными учетными данными, появляется дополнительный div с сообщением об ошибке.

Тем не менее, это сообщение об ошибке div не отображается на мой взгляд.С тех пор я адаптировал шаблон к нашему корпоративному дизайну, но я помню, что эта проблема уже существовала, когда два файла LoginView.java и login-view.html все еще были точными копиями из приложения хлебобулочных изделий.Я дважды проверил, что .error не просто скрыт моим собственным css - div.error не существует в DOM.

Отладка LoginView при посещении /login?error (посещение login?error=true такое же) показываетчто он не распознает какие-либо queryParameters!-> Почему?


Отладка моего приложения: debugging screenshot


Отладка приложения хлебобулочных изделий: debugging screenshot 2


Моя (Spring) конфигурация безопасности такая же, что касается входа в систему:

.and()
.formLogin()
.loginPage(("/login")).permitAll()
.loginProcessingUrl("/login")
.failureUrl("/login?error")

Редактировать: в соответствии с просьбой в комментариях я добавлю соответствующую часть шаблона,Однако ошибка на 100% отсутствует в шаблоне - как я вижу при отладке, ошибка возникает уже в LoginView.java в методе afterNavigation.

<dom-module id="login-view">
  <template>
    <style include="shared-styles">
        .....
    </style>
        .....
            <template is="dom-if" if="[[error]]">
              <div class="error">
                <iron-icon icon="vaadin:exclamation-circle-o" class="error__icon"></iron-icon>
                <p class="error__text">
                  Der Benutzername und/oder das Passwort stimmt nicht. Bitte überprüfe deine Angaben und versuche es erneut.
                </p>
              </div>
            </template>
      ....
  </template>

  <script>
    class LoginView extends Polymer.GestureEventListeners(Polymer.Element) {
        static get is() {
            return 'login-view';
        }

        static get properties() {
            return {
                error: {
                    type: Boolean,
                    value: false
                }
            };
        }
        ......
    }
    window.customElements.define(LoginView.is, LoginView);
  </script>
</dom-module>
...