Отказ от выполнения скрипта при включении JS-библиотек в шаблон Thymeleaf

#javascript #thymeleaf

#javascript #thymeleaf

Вопрос:

Я хочу использовать jQuery и JSEncrypt на моей странице Thymeleaf. В результате исследования я обнаружил, что могу достичь этого, включив js-файлы библиотек, которые сохранены в моей папке / static / js / приложения spring boot.

Я получаю следующую ошибку:

введите описание изображения здесь

FolderTree:

Каталог-дерево приложения Spring

Мой HTML выглядит следующим образом:

 <html ..>
..
..   
<link href="../static/css/layout.css" th:href="@{css/layout.css}" rel="stylesheet" type="text/css"/>
<script type="text/javascript" th:src="@{js/jquery-3.5.1.min.js}"></script>
<script type="text/javascript" th:src="@{js/jsencrypt.min.js}"></script>
<script type="text/javascript">
    function encryptPw() {
        var encPw = $('#password').val();
        console.log(encPw);
    }
</script>
</head>

<body>
<form ...>
...
...
 <p>
     <label for="password" class="login-hidden-label">Passwort</label>
     <input type="password" id="password" name="password" class="login-input-field" placeholder="Passwort" required>
 </p>
    <button class="login-accept-button" onclick="encryptPassword()" type="submit">Anmelden</button>
</body>
</html>
  

Ответ №1:

Решена путем разрешения всех запросов в spring web security для

 /js/**
  

в моих antMatchers.

 httpSecurity.antMatchers("/js/**").permitAll();
  

исправляет это.