Литерал Thymeleaf обрабатывается как ссылка на фрагмент - PullRequest
0 голосов
/ 06 июля 2019

Я пытаюсь настроить страницу, используя фрагменты, и у меня проблемы с литералами.

index.html template

<!DOCTYPE HTML>
<html xmlns:th="http://www.thymeleaf.org">
<head th:replace="~{main_components::common_header('Home Page',_)}">
</head>
<body>
<p>Get your greeting <a href="/greeting">here</a></p>

<div th:insert="~{main_components::footer}"></div>
</body>
</html>

шаблон main_components:

<!DOCTYPE html>

<html xmlns:th="http://www.thymeleaf.org">

<head th:fragment="common_header(title,links)" >

    <title th:replace="${title}">The awesome application</title>

    <!-- Common styles and scripts -->
    <link rel="stylesheet" type="text/css" media="all" th:href="@{/css/awesomeapp.css}">
    <link rel="shortcut icon" th:href="@{/images/favicon.ico}">
    <script type="text/javascript" th:src="@{/sh/scripts/codebase.js}"></script>

    <!--/* Per-page placeholder for additional links */-->
    <th:block th:replace="${links}"/>

</head>

<body>

<div th:fragment="footer">
    &copy; 2019 EBP :)
</div>

</body>

</html>

Проблема здесь в том, что литерал 'Home Page', по-видимому, обрабатывается как ссылка на другой фрагмент, что приводит к следующей ошибке при попытке доступа к index:

org.thymeleaf.exceptions.TemplateInputException: Error resolving template [Home Page], template might not exist or might not be accessible by any of the configured Template Resolvers (template: "main_components" - line 7, col 12)

В данный момент я использую очень простую настройку, основанную на Это Spring MVC Tutorial . Что мне нужно сделать, чтобы правильно передать литералы в качестве параметра?

1 Ответ

0 голосов
/ 06 июля 2019

Разобрался ...

th:replace предназначен для замены всего тега, который будет искать что-то, чтобы заменить его.Я переключил его на использование th:text, которое имело желаемый эффект.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...