Closed Bibi4kovIgor closed 8 months ago
Source files: layout.html:
<!DOCTYPE html>
<html
lang="uk"
xmlns:th="http://www.thymeleaf.org"
xmlns:layout="http://www.ultraq.net.nz/thymeleaf/layout">
<head>
<meta name="viewport" content="width=device-width, initial-scale=1">
<title>Інтернет-магазин - th:replace="${title}"</title>
<link rel="stylesheet" href="https://cdn.jsdelivr.net/npm/bootstrap@5.2.3/dist/css/bootstrap.min.css"
integrity="sha384-rbsA2VBKQhggwzxH7pPCaAqO46MgnOM80zW1RWuH61DGLwZJEdK2Kadq2F9CUG65"
crossorigin="anonymous">
<link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/font-awesome/6.4.2/css/all.min.css"
integrity="sha512-z3gLpd7yknf1YoNbCzqRKc4qyor8gaKU1qmn+CShxbuBusANI9QpRohGBreCFkKxLhei6S9CQXFEbbKuqLg0DA=="
crossorigin="anonymous" referrerpolicy="no-referrer" />
<link rel="icon" type="image/svg+xml" th:href="@{favicons/favicon.svg}" />
<script src="https://cdn.jsdelivr.net/npm/bootstrap@5.2.3/dist/js/bootstrap.min.js"
integrity="sha384-cuYeSxntonz0PPNlHhBs68uyIAVpIIOZZ5JqeqvYYIcEL727kskC66kF92t6Xl2V"
crossorigin="anonymous"></script>
</head>
<body>
<header>
<div layout:fragment="header"></div>
</header>
<section>
<div layout:fragment="content"></div>
</section>
<footer>
<div layout:fragment="footer"></div>
</footer>
</body>
</html>
MainPageController.java:
import edu.lemon.DemoInternetStore.controller.services.CustomersService;
import edu.lemon.DemoInternetStore.controller.services.ProductsService;
import edu.lemon.DemoInternetStore.model.dto.CustomersDto;
import edu.lemon.DemoInternetStore.model.dto.ProductsDto;
import org.springframework.stereotype.Controller;
import org.springframework.ui.ModelMap;
import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.ModelAttribute;
import org.springframework.web.bind.annotation.RequestParam;
import org.springframework.web.servlet.ModelAndView;
import java.util.Optional;
@Controller
public class MainPageController {
CustomersService customersService;
ProductsService productsService;
public MainPageController(CustomersService customersService, ProductsService productsService) {
this.customersService = customersService;
this.productsService = productsService;
}
@GetMapping(value = {"/", "/index", "/home"})
public ModelAndView index(
@ModelAttribute("response") ModelMap model,
@RequestParam(value = "name", required = false) String name) {
Optional<CustomersDto> customerDaoOptional = customersService.getUserInfoByName(name);
String responseString = customerDaoOptional.isEmpty()
? "User was not found"
: customerDaoOptional.toString();
model.addAttribute("responseString", responseString);
return new ModelAndView("/pages/index", model);
}
@GetMapping("/customers")
public ModelAndView getCustomersByFirstName(
@ModelAttribute("response") ModelMap model,
@RequestParam(value = "name", required = false) String name) {
model.addAttribute("customers", customersService.getCustomerByFirstName(name));
model.addAttribute("customerType", CustomersDto.class);
return new ModelAndView("/pages/customers", model);
}
@GetMapping("/products")
public ModelAndView getProductsList(ModelMap modelMap){
return new ModelAndView(
"/pages/products",
new ModelMap()
.addAttribute("products", productsService.getAllProducts())
.addAttribute("productType", ProductsDto.builder().build()));
}
}
pom.xml:
<?xml version="1.0" encoding="UTF-8"?>
<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 https://maven.apache.org/xsd/maven-4.0.0.xsd">
<modelVersion>4.0.0</modelVersion>
<parent>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-parent</artifactId>
<version>3.1.1</version>
<relativePath/> <!-- lookup parent from repository -->
</parent>
<groupId>edu.lemon</groupId>
<artifactId>DemoInternetStore</artifactId>
<version>0.2</version>
<name>DemoInternetStore</name>
<description>Demo project for Spring Boot</description>
<properties>
<java.version>17</java.version>
</properties>
<dependencies>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-web</artifactId>
<version>3.1.1</version>
</dependency>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-data-jpa</artifactId>
</dependency>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-thymeleaf</artifactId>
<version>3.1.1</version>
</dependency>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-test</artifactId>
<scope>test</scope>
</dependency>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-validation</artifactId>
</dependency>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-security</artifactId>
</dependency>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-oauth2-client</artifactId>
</dependency>
<dependency>
<groupId>com.google.code.gson</groupId>
<artifactId>gson</artifactId>
<version>2.9.0</version>
</dependency>
<dependency>
<groupId>org.flywaydb</groupId>
<artifactId>flyway-core</artifactId>
<version>9.5.1</version>
</dependency>
<dependency>
<groupId>org.projectlombok</groupId>
<artifactId>lombok</artifactId>
<optional>true</optional>
</dependency>
<dependency>
<groupId>org.postgresql</groupId>
<artifactId>postgresql</artifactId>
</dependency>
<dependency>
<groupId>nz.net.ultraq.thymeleaf</groupId>
<artifactId>thymeleaf-layout-dialect</artifactId>
<version>3.2.1</version>
</dependency>
</dependencies>
<build>
<plugins>
<plugin>
<artifactId>maven-assembly-plugin</artifactId>
<version>3.5.0</version>
<executions>
<execution>
<phase>package</phase>
<goals>
<goal>single</goal>
</goals>
</execution>
</executions>
<configuration>
<finalName>internetstore</finalName>
<outputDirectory>${project.basedir}/docker/images</outputDirectory>
<descriptorRefs>
<descriptorRef>jar-with-dependencies</descriptorRef>
</descriptorRefs>
<archive>
<manifest>
<addClasspath>true</addClasspath>
<classpathPrefix>libs/</classpathPrefix>
<mainClass>edu.lemon.DemoInternetStore.Application</mainClass>
</manifest>
</archive>
</configuration>
</plugin>
<plugin>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-maven-plugin</artifactId>
<configuration>
<excludes>
<exclude>
<groupId>org.projectlombok</groupId>
<artifactId>lombok</artifactId>
</exclude>
</excludes>
</configuration>
</plugin>
</plugins>
</build>
</project>
products.html:
<!DOCTYPE html>
<html lang="uk"
xmlns:layout="http://www.ultraq.net.nz/thymeleaf/layout"
layout:decorate="~{layout}">
<head>
<title>Products List</title>
</head>
<body>
<section>
<div layout:fragment="content"
xmlns:th="http://www.thymeleaf.org"
class="container">
<div id="productsList" >
<div th:if="${#lists.size(products) == 0}">
<h2>There are no products was added yet</h2>
</div>
<table class="table">
<thead>
<tr>
<th scope="col">Product Name</th>
<th scope="col">Quantity</th>
<th scope="col">Price</th>
<th scope="col">Vendor Code</th>
<th scope="col">Description</th>
</tr>
</thead>
<tbody th:each="product : ${products}">
<tr>
<td th:text="${product.name}"></td>
<td th:text="${product.quantity}"></td>
<td th:text="${product.price}"></td>
<td th:text="${product.vendorCode}"></td>
<td th:text="${product.description}"></td>
</tr>
</tbody>
</table>
</div>
</div>
</section>
</body>
</html>
Hi there, unfortunately the develop
branch of your GitHub project seems to be in a state that was before you tried adding all of the Thymeleaf-related code. I even tried copy/pasting the code you had above into their proper places, but then the controller was missing things like a CustomerService
, ProductService
, Spring was complaining about DB connection URLs, etc.
In the end I commented out a lot of that stuff so got your products page to show with an empty list, and it showed up fine with no error and the expected HTML:
If you could create a branch with the broken Thymeleaf template part, then I can look at that. Otherwise, this may point to other things not being set up that might be at the heart of the problem.
I'd create test project with thymeleaf ultraq decorator (with Intellijidea environment) and it had been worked. Next, I'd try to package my project to jar-file (the same one) and got an unexpeccted error: " Error rendering view [org.thymeleaf.spring6.view.ThymeleafView@3deb5eb6] internetstore-application-1 | org.thymeleaf.exceptions.TemplateProcessingException: Error during execution of processor 'nz.net.ultraq.thymeleaf.layoutdialect.decorators.DecorateProcessor' (template: "pages/products" - line 5, col 7)"
page/products file:
<!DOCTYPE html>
<html lang="uk"
xmlns:th="http://www.thymeleaf.org"
xmlns:layout="http://www.ultraq.net.nz/thymeleaf/layout"
layout:decorate="~{layout.html}">
<head>
<title>Products List</title>
</head>
<body>
<section layout:fragment="content">
<div class="container">
<div id="productsList" >
<div th:if="${#lists.size(products) == 0}">
<h2>There are no products was added yet</h2>
</div>
<table class="table">
<thead>
<tr>
<th scope="col">Product Name</th>
<th scope="col">Quantity</th>
<th scope="col">Price</th>
<th scope="col">Vendor Code</th>
<th scope="col">Description</th>
</tr>
</thead>
<tbody th:each="product : ${products}">
<tr>
<td th:text="${product.name}"></td>
<td th:text="${product.quantity}"></td>
<td th:text="${product.price}"></td>
<td th:text="${product.vendorCode}"></td>
<td th:text="${product.description}"></td>
</tr>
</tbody>
</table>
</div>
</div>
</section>
</body>
</html>
Full stack trace:
TEMPLATE ENGINE CONFIGURED OK
internetstore-application-1 | 20:25:36.544 DEBUG org.thymeleaf.TemplateEngine - [THYMELEAF] TEMPLATE ENGINE INITIALIZED
internetstore-application-1 | 20:25:36.695 ERROR org.thymeleaf.TemplateEngine - [THYMELEAF][http-nio-8082-exec-6] Exception processing template "pages/products": Error during execution of processor 'nz.net.ultraq.thymeleaf.layoutdialect.decorators.DecorateProcessor' (template: "pages/products" - line 5, col 7)
internetstore-application-1 | org.thymeleaf.exceptions.TemplateProcessingException: Error during execution of processor 'nz.net.ultraq.thymeleaf.layoutdialect.decorators.DecorateProcessor' (template: "pages/products" - line 5, col 7)
internetstore-application-1 | at org.thymeleaf.processor.element.AbstractAttributeModelProcessor.doProcess(AbstractAttributeModelProcessor.java:134)
internetstore-application-1 | at org.thymeleaf.processor.element.AbstractElementModelProcessor.process(AbstractElementModelProcessor.java:98)
internetstore-application-1 | at org.thymeleaf.util.ProcessorConfigurationUtils$ElementModelProcessorWrapper.process(ProcessorConfigurationUtils.java:649)
internetstore-application-1 | at org.thymeleaf.engine.ProcessorTemplateHandler.handleOpenElement(ProcessorTemplateHandler.java:1510)
internetstore-application-1 | at org.thymeleaf.engine.OpenElementTag.beHandled(OpenElementTag.java:205)
internetstore-application-1 | at org.thymeleaf.engine.Model.process(Model.java:282)
internetstore-application-1 | at org.thymeleaf.engine.Model.process(Model.java:290)
internetstore-application-1 | at org.thymeleaf.engine.GatheringModelProcessable.process(GatheringModelProcessable.java:78)
internetstore-application-1 | at org.thymeleaf.engine.ProcessorTemplateHandler.handleCloseElement(ProcessorTemplateHandler.java:1640)
internetstore-application-1 | at org.thymeleaf.engine.CloseElementTag.beHandled(CloseElementTag.java:139)
internetstore-application-1 | at org.thymeleaf.engine.TemplateModel.process(TemplateModel.java:136)
internetstore-application-1 | at org.thymeleaf.engine.TemplateManager.parseAndProcess(TemplateManager.java:661)
internetstore-application-1 | at org.thymeleaf.TemplateEngine.process(TemplateEngine.java:1103)
internetstore-application-1 | at org.thymeleaf.TemplateEngine.process(TemplateEngine.java:1077)
internetstore-application-1 | at org.thymeleaf.spring6.view.ThymeleafView.renderFragment(ThymeleafView.java:372)
internetstore-application-1 | at org.thymeleaf.spring6.view.ThymeleafView.render(ThymeleafView.java:192)
internetstore-application-1 | at org.springframework.web.servlet.DispatcherServlet.render(DispatcherServlet.java:1415)
internetstore-application-1 | at org.springframework.web.servlet.DispatcherServlet.processDispatchResult(DispatcherServlet.java:1159)
internetstore-application-1 | at org.springframework.web.servlet.DispatcherServlet.doDispatch(DispatcherServlet.java:1098)
internetstore-application-1 | at org.springframework.web.servlet.DispatcherServlet.doService(DispatcherServlet.java:974)
internetstore-application-1 | at org.springframework.web.servlet.FrameworkServlet.processRequest(FrameworkServlet.java:1011)
internetstore-application-1 | at org.springframework.web.servlet.FrameworkServlet.doGet(FrameworkServlet.java:903)
internetstore-application-1 | at jakarta.servlet.http.HttpServlet.service(HttpServlet.java:564)
internetstore-application-1 | at org.springframework.web.servlet.FrameworkServlet.service(FrameworkServlet.java:885)
internetstore-application-1 | at jakarta.servlet.http.HttpServlet.service(HttpServlet.java:658)
internetstore-application-1 | at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:205)
internetstore-application-1 | at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:149)
internetstore-application-1 | at org.apache.tomcat.websocket.server.WsFilter.doFilter(WsFilter.java:51)
internetstore-application-1 | at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:174)
internetstore-application-1 | at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:149)
internetstore-application-1 | at org.springframework.security.web.FilterChainProxy.lambda$doFilterInternal$3(FilterChainProxy.java:231)
internetstore-application-1 | at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:365)
internetstore-application-1 | at org.springframework.security.web.access.intercept.AuthorizationFilter.doFilter(AuthorizationFilter.java:100)
internetstore-application-1 | at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:374)
internetstore-application-1 | at org.springframework.security.web.access.ExceptionTranslationFilter.doFilter(ExceptionTranslationFilter.java:126)
internetstore-application-1 | at org.springframework.security.web.access.ExceptionTranslationFilter.doFilter(ExceptionTranslationFilter.java:120)
internetstore-application-1 | at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:374)
internetstore-application-1 | at org.springframework.security.web.authentication.AnonymousAuthenticationFilter.doFilter(AnonymousAuthenticationFilter.java:100)
internetstore-application-1 | at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:374)
internetstore-application-1 | at org.springframework.security.web.servletapi.SecurityContextHolderAwareRequestFilter.doFilter(SecurityContextHolderAwareRequestFilter.java:179)
internetstore-application-1 | at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:374)
internetstore-application-1 | at org.springframework.security.web.savedrequest.RequestCacheAwareFilter.doFilter(RequestCacheAwareFilter.java:63)
internetstore-application-1 | at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:374)
internetstore-application-1 | at org.springframework.security.web.authentication.ui.DefaultLogoutPageGeneratingFilter.doFilterInternal(DefaultLogoutPageGeneratingFilter.java:58)
internetstore-application-1 | at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:116)
internetstore-application-1 | at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:374)
internetstore-application-1 | at org.springframework.security.web.authentication.ui.DefaultLoginPageGeneratingFilter.doFilter(DefaultLoginPageGeneratingFilter.java:188)
internetstore-application-1 | at org.springframework.security.web.authentication.ui.DefaultLoginPageGeneratingFilter.doFilter(DefaultLoginPageGeneratingFilter.java:174)
internetstore-application-1 | at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:374)
internetstore-application-1 | at org.springframework.security.web.authentication.AbstractAuthenticationProcessingFilter.doFilter(AbstractAuthenticationProcessingFilter.java:227)
internetstore-application-1 | at org.springframework.security.web.authentication.AbstractAuthenticationProcessingFilter.doFilter(AbstractAuthenticationProcessingFilter.java:221)
internetstore-application-1 | at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:374)
internetstore-application-1 | at org.springframework.security.oauth2.client.web.OAuth2AuthorizationRequestRedirectFilter.doFilterInternal(OAuth2AuthorizationRequestRedirectFilter.java:181)
internetstore-application-1 | at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:116)
internetstore-application-1 | at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:374)
internetstore-application-1 | at org.springframework.security.web.authentication.logout.LogoutFilter.doFilter(LogoutFilter.java:107)
internetstore-application-1 | at org.springframework.security.web.authentication.logout.LogoutFilter.doFilter(LogoutFilter.java:93)
internetstore-application-1 | at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:374)
internetstore-application-1 | at org.springframework.security.web.csrf.CsrfFilter.doFilterInternal(CsrfFilter.java:117)
internetstore-application-1 | at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:116)
internetstore-application-1 | at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:374)
internetstore-application-1 | at org.springframework.security.web.header.HeaderWriterFilter.doHeadersAfter(HeaderWriterFilter.java:90)
internetstore-application-1 | at org.springframework.security.web.header.HeaderWriterFilter.doFilterInternal(HeaderWriterFilter.java:75)
internetstore-application-1 | at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:116)
internetstore-application-1 | at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:374)
internetstore-application-1 | at org.springframework.security.web.context.SecurityContextHolderFilter.doFilter(SecurityContextHolderFilter.java:82)
internetstore-application-1 | at org.springframework.security.web.context.SecurityContextHolderFilter.doFilter(SecurityContextHolderFilter.java:69)
internetstore-application-1 | at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:374)
internetstore-application-1 | at org.springframework.security.web.context.request.async.WebAsyncManagerIntegrationFilter.doFilterInternal(WebAsyncManagerIntegrationFilter.java:62)
internetstore-application-1 | at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:116)
internetstore-application-1 | at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:374)
internetstore-application-1 | at org.springframework.security.web.session.DisableEncodeUrlFilter.doFilterInternal(DisableEncodeUrlFilter.java:42)
internetstore-application-1 | at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:116)
internetstore-application-1 | at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:374)
internetstore-application-1 | at org.springframework.security.web.FilterChainProxy.doFilterInternal(FilterChainProxy.java:233)
internetstore-application-1 | at org.springframework.security.web.FilterChainProxy.doFilter(FilterChainProxy.java:191)
internetstore-application-1 | at org.springframework.web.filter.DelegatingFilterProxy.invokeDelegate(DelegatingFilterProxy.java:352)
internetstore-application-1 | at org.springframework.web.filter.DelegatingFilterProxy.doFilter(DelegatingFilterProxy.java:268)
internetstore-application-1 | at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:174)
internetstore-application-1 | at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:149)
internetstore-application-1 | at org.springframework.web.filter.RequestContextFilter.doFilterInternal(RequestContextFilter.java:100)
internetstore-application-1 | at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:116)
internetstore-application-1 | at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:174)
internetstore-application-1 | at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:149)
internetstore-application-1 | at org.springframework.web.filter.FormContentFilter.doFilterInternal(FormContentFilter.java:93)
internetstore-application-1 | at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:116)
internetstore-application-1 | at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:174)
internetstore-application-1 | at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:149)
internetstore-application-1 | at org.springframework.web.filter.CharacterEncodingFilter.doFilterInternal(CharacterEncodingFilter.java:201)
internetstore-application-1 | at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:116)
internetstore-application-1 | at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:174)
internetstore-application-1 | at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:149)
internetstore-application-1 | at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:166)
internetstore-application-1 | at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:90)
internetstore-application-1 | at org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:482)
internetstore-application-1 | at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:115)
internetstore-application-1 | at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:93)
internetstore-application-1 | at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:74)
internetstore-application-1 | at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:341)
internetstore-application-1 | at org.apache.coyote.http11.Http11Processor.service(Http11Processor.java:391)
internetstore-application-1 | at org.apache.coyote.AbstractProcessorLight.process(AbstractProcessorLight.java:63)
internetstore-application-1 | at org.apache.coyote.AbstractProtocol$ConnectionHandler.process(AbstractProtocol.java:894)
internetstore-application-1 | at org.apache.tomcat.util.net.NioEndpoint$SocketProcessor.doRun(NioEndpoint.java:1741)
internetstore-application-1 | at org.apache.tomcat.util.net.SocketProcessorBase.run(SocketProcessorBase.java:52)
internetstore-application-1 | at org.apache.tomcat.util.threads.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1191)
internetstore-application-1 | at org.apache.tomcat.util.threads.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:659)
internetstore-application-1 | at org.apache.tomcat.util.threads.TaskThread$WrappingRunnable.run(TaskThread.java:61)
internetstore-application-1 | at java.base/java.lang.Thread.run(Thread.java:833)
internetstore-application-1 | Caused by: groovy.lang.MissingMethodException: No signature of method: org.thymeleaf.context.WebEngineContext.getOrCreate() is applicable for argument types: (String, nz.net.ultraq.thymeleaf.layoutdialect.context.extensions.IContextExtensions$_getPrefixForDialect_closure1) values: [DialectPrefix::org.thymeleaf.standard.StandardDialect, nz.net.ultraq.thymeleaf.layoutdialect.context.extensions.IContextExtensions$_getPrefixForDialect_closure1@1d63ba33]
internetstore-application-1 | at org.codehaus.groovy.runtime.ScriptBytecodeAdapter.unwrap(ScriptBytecodeAdapter.java:72)
internetstore-application-1 | at org.codehaus.groovy.vmplugin.v8.IndyGuardsFiltersAndSignatures.unwrap(IndyGuardsFiltersAndSignatures.java:161)
internetstore-application-1 | at org.codehaus.groovy.vmplugin.v8.IndyInterface.fromCache(IndyInterface.java:321)
internetstore-application-1 | at nz.net.ultraq.thymeleaf.layoutdialect.context.extensions.IContextExtensions.getPrefixForDialect(IContextExtensions.groovy:54)
internetstore-application-1 | at org.codehaus.groovy.vmplugin.v8.IndyInterface.fromCache(IndyInterface.java:321)
internetstore-application-1 | at nz.net.ultraq.thymeleaf.layoutdialect.models.extensions.IProcessableElementTagExtensions.equalsIgnoreXmlnsAndWith(IProcessableElementTagExtensions.groovy:60)
internetstore-application-1 | at org.codehaus.groovy.vmplugin.v8.IndyInterface.fromCache(IndyInterface.java:321)
internetstore-application-1 | at nz.net.ultraq.thymeleaf.layoutdialect.decorators.DecorateProcessor.doProcess(DecorateProcessor.groovy:103)
internetstore-application-1 | at org.thymeleaf.processor.element.AbstractAttributeModelProcessor.doProcess(AbstractAttributeModelProcessor.java:77)
internetstore-application-1 | ... 107 common frames omitted
internetstore-application-1 | 20:25:36.807 DEBUG o.s.web.servlet.DispatcherServlet - Error rendering view [org.thymeleaf.spring6.view.ThymeleafView@3deb5eb6]
internetstore-application-1 | org.thymeleaf.exceptions.TemplateProcessingException: Error during execution of processor 'nz.net.ultraq.thymeleaf.layoutdialect.decorators.DecorateProcessor' (template: "pages/products" - line 5, col 7)
internetstore-application-1 | at org.thymeleaf.processor.element.AbstractAttributeModelProcessor.doProcess(AbstractAttributeModelProcessor.java:134)
internetstore-application-1 | at org.thymeleaf.processor.element.AbstractElementModelProcessor.process(AbstractElementModelProcessor.java:98)
internetstore-application-1 | at org.thymeleaf.util.ProcessorConfigurationUtils$ElementModelProcessorWrapper.process(ProcessorConfigurationUtils.java:649)
internetstore-application-1 | at org.thymeleaf.engine.ProcessorTemplateHandler.handleOpenElement(ProcessorTemplateHandler.java:1510)
internetstore-application-1 | at org.thymeleaf.engine.OpenElementTag.beHandled(OpenElementTag.java:205)
internetstore-application-1 | at org.thymeleaf.engine.Model.process(Model.java:282)
internetstore-application-1 | at org.thymeleaf.engine.Model.process(Model.java:290)
internetstore-application-1 | at org.thymeleaf.engine.GatheringModelProcessable.process(GatheringModelProcessable.java:78)
internetstore-application-1 | at org.thymeleaf.engine.ProcessorTemplateHandler.handleCloseElement(ProcessorTemplateHandler.java:1640)
internetstore-application-1 | at org.thymeleaf.engine.CloseElementTag.beHandled(CloseElementTag.java:139)
internetstore-application-1 | at org.thymeleaf.engine.TemplateModel.process(TemplateModel.java:136)
internetstore-application-1 | at org.thymeleaf.engine.TemplateManager.parseAndProcess(TemplateManager.java:661)
internetstore-application-1 | at org.thymeleaf.TemplateEngine.process(TemplateEngine.java:1103)
internetstore-application-1 | at org.thymeleaf.TemplateEngine.process(TemplateEngine.java:1077)
internetstore-application-1 | at org.thymeleaf.spring6.view.ThymeleafView.renderFragment(ThymeleafView.java:372)
internetstore-application-1 | at org.thymeleaf.spring6.view.ThymeleafView.render(ThymeleafView.java:192)
internetstore-application-1 | at org.springframework.web.servlet.DispatcherServlet.render(DispatcherServlet.java:1415)
internetstore-application-1 | at org.springframework.web.servlet.DispatcherServlet.processDispatchResult(DispatcherServlet.java:1159)
internetstore-application-1 | at org.springframework.web.servlet.DispatcherServlet.doDispatch(DispatcherServlet.java:1098)
internetstore-application-1 | at org.springframework.web.servlet.DispatcherServlet.doService(DispatcherServlet.java:974)
internetstore-application-1 | at org.springframework.web.servlet.FrameworkServlet.processRequest(FrameworkServlet.java:1011)
internetstore-application-1 | at org.springframework.web.servlet.FrameworkServlet.doGet(FrameworkServlet.java:903)
internetstore-application-1 | at jakarta.servlet.http.HttpServlet.service(HttpServlet.java:564)
internetstore-application-1 | at org.springframework.web.servlet.FrameworkServlet.service(FrameworkServlet.java:885)
internetstore-application-1 | at jakarta.servlet.http.HttpServlet.service(HttpServlet.java:658)
internetstore-application-1 | at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:205)
internetstore-application-1 | at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:149)
internetstore-application-1 | at org.apache.tomcat.websocket.server.WsFilter.doFilter(WsFilter.java:51)
internetstore-application-1 | at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:174)
internetstore-application-1 | at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:149)
internetstore-application-1 | at org.springframework.security.web.FilterChainProxy.lambda$doFilterInternal$3(FilterChainProxy.java:231)
internetstore-application-1 | at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:365)
internetstore-application-1 | at org.springframework.security.web.access.intercept.AuthorizationFilter.doFilter(AuthorizationFilter.java:100)
internetstore-application-1 | at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:374)
internetstore-application-1 | at org.springframework.security.web.access.ExceptionTranslationFilter.doFilter(ExceptionTranslationFilter.java:126)
internetstore-application-1 | at org.springframework.security.web.access.ExceptionTranslationFilter.doFilter(ExceptionTranslationFilter.java:120)
internetstore-application-1 | at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:374)
internetstore-application-1 | at org.springframework.security.web.authentication.AnonymousAuthenticationFilter.doFilter(AnonymousAuthenticationFilter.java:100)
internetstore-application-1 | at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:374)
internetstore-application-1 | at org.springframework.security.web.servletapi.SecurityContextHolderAwareRequestFilter.doFilter(SecurityContextHolderAwareRequestFilter.java:179)
internetstore-application-1 | at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:374)
internetstore-application-1 | at org.springframework.security.web.savedrequest.RequestCacheAwareFilter.doFilter(RequestCacheAwareFilter.java:63)
internetstore-application-1 | at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:374)
internetstore-application-1 | at org.springframework.security.web.authentication.ui.DefaultLogoutPageGeneratingFilter.doFilterInternal(DefaultLogoutPageGeneratingFilter.java:58)
internetstore-application-1 | at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:116)
internetstore-application-1 | at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:374)
internetstore-application-1 | at org.springframework.security.web.authentication.ui.DefaultLoginPageGeneratingFilter.doFilter(DefaultLoginPageGeneratingFilter.java:188)
internetstore-application-1 | at org.springframework.security.web.authentication.ui.DefaultLoginPageGeneratingFilter.doFilter(DefaultLoginPageGeneratingFilter.java:174)
internetstore-application-1 | at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:374)
internetstore-application-1 | at org.springframework.security.web.authentication.AbstractAuthenticationProcessingFilter.doFilter(AbstractAuthenticationProcessingFilter.java:227)
internetstore-application-1 | at org.springframework.security.web.authentication.AbstractAuthenticationProcessingFilter.doFilter(AbstractAuthenticationProcessingFilter.java:221)
internetstore-application-1 | at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:374)
internetstore-application-1 | at org.springframework.security.oauth2.client.web.OAuth2AuthorizationRequestRedirectFilter.doFilterInternal(OAuth2AuthorizationRequestRedirectFilter.java:181)
internetstore-application-1 | at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:116)
internetstore-application-1 | at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:374)
internetstore-application-1 | at org.springframework.security.web.authentication.logout.LogoutFilter.doFilter(LogoutFilter.java:107)
internetstore-application-1 | at org.springframework.security.web.authentication.logout.LogoutFilter.doFilter(LogoutFilter.java:93)
internetstore-application-1 | at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:374)
internetstore-application-1 | at org.springframework.security.web.csrf.CsrfFilter.doFilterInternal(CsrfFilter.java:117)
internetstore-application-1 | at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:116)
internetstore-application-1 | at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:374)
internetstore-application-1 | at org.springframework.security.web.header.HeaderWriterFilter.doHeadersAfter(HeaderWriterFilter.java:90)
internetstore-application-1 | at org.springframework.security.web.header.HeaderWriterFilter.doFilterInternal(HeaderWriterFilter.java:75)
internetstore-application-1 | at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:116)
internetstore-application-1 | at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:374)
internetstore-application-1 | at org.springframework.security.web.context.SecurityContextHolderFilter.doFilter(SecurityContextHolderFilter.java:82)
internetstore-application-1 | at org.springframework.security.web.context.SecurityContextHolderFilter.doFilter(SecurityContextHolderFilter.java:69)
internetstore-application-1 | at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:374)
internetstore-application-1 | at org.springframework.security.web.context.request.async.WebAsyncManagerIntegrationFilter.doFilterInternal(WebAsyncManagerIntegrationFilter.java:62)
internetstore-application-1 | at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:116)
internetstore-application-1 | at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:374)
internetstore-application-1 | at org.springframework.security.web.session.DisableEncodeUrlFilter.doFilterInternal(DisableEncodeUrlFilter.java:42)
internetstore-application-1 | at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:116)
internetstore-application-1 | at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:374)
internetstore-application-1 | at org.springframework.security.web.FilterChainProxy.doFilterInternal(FilterChainProxy.java:233)
internetstore-application-1 | at org.springframework.security.web.FilterChainProxy.doFilter(FilterChainProxy.java:191)
internetstore-application-1 | at org.springframework.web.filter.DelegatingFilterProxy.invokeDelegate(DelegatingFilterProxy.java:352)
internetstore-application-1 | at org.springframework.web.filter.DelegatingFilterProxy.doFilter(DelegatingFilterProxy.java:268)
internetstore-application-1 | at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:174)
internetstore-application-1 | at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:149)
internetstore-application-1 | at org.springframework.web.filter.RequestContextFilter.doFilterInternal(RequestContextFilter.java:100)
internetstore-application-1 | at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:116)
internetstore-application-1 | at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:174)
internetstore-application-1 | at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:149)
internetstore-application-1 | at org.springframework.web.filter.FormContentFilter.doFilterInternal(FormContentFilter.java:93)
internetstore-application-1 | at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:116)
internetstore-application-1 | at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:174)
internetstore-application-1 | at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:149)
internetstore-application-1 | at org.springframework.web.filter.CharacterEncodingFilter.doFilterInternal(CharacterEncodingFilter.java:201)
internetstore-application-1 | at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:116)
internetstore-application-1 | at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:174)
internetstore-application-1 | at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:149)
internetstore-application-1 | at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:166)
internetstore-application-1 | at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:90)
internetstore-application-1 | at org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:482)
internetstore-application-1 | at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:115)
internetstore-application-1 | at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:93)
internetstore-application-1 | at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:74)
internetstore-application-1 | at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:341)
internetstore-application-1 | at org.apache.coyote.http11.Http11Processor.service(Http11Processor.java:391)
internetstore-application-1 | at org.apache.coyote.AbstractProcessorLight.process(AbstractProcessorLight.java:63)
internetstore-application-1 | at org.apache.coyote.AbstractProtocol$ConnectionHandler.process(AbstractProtocol.java:894)
internetstore-application-1 | at org.apache.tomcat.util.net.NioEndpoint$SocketProcessor.doRun(NioEndpoint.java:1741)
internetstore-application-1 | at org.apache.tomcat.util.net.SocketProcessorBase.run(SocketProcessorBase.java:52)
internetstore-application-1 | at org.apache.tomcat.util.threads.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1191)
internetstore-application-1 | at org.apache.tomcat.util.threads.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:659)
internetstore-application-1 | at org.apache.tomcat.util.threads.TaskThread$WrappingRunnable.run(TaskThread.java:61)
internetstore-application-1 | at java.base/java.lang.Thread.run(Thread.java:833)
internetstore-application-1 | Caused by: groovy.lang.MissingMethodException: No signature of method: org.thymeleaf.context.WebEngineContext.getOrCreate() is applicable for argument types: (String, nz.net.ultraq.thymeleaf.layoutdialect.context.extensions.IContextExtensions$_getPrefixForDialect_closure1) values: [DialectPrefix::org.thymeleaf.standard.StandardDialect, nz.net.ultraq.thymeleaf.layoutdialect.context.extensions.IContextExtensions$_getPrefixForDialect_closure1@1d63ba33]
internetstore-application-1 | at org.codehaus.groovy.runtime.ScriptBytecodeAdapter.unwrap(ScriptBytecodeAdapter.java:72)
internetstore-application-1 | at org.codehaus.groovy.vmplugin.v8.IndyGuardsFiltersAndSignatures.unwrap(IndyGuardsFiltersAndSignatures.java:161)
internetstore-application-1 | at org.codehaus.groovy.vmplugin.v8.IndyInterface.fromCache(IndyInterface.java:321)
internetstore-application-1 | at nz.net.ultraq.thymeleaf.layoutdialect.context.extensions.IContextExtensions.getPrefixForDialect(IContextExtensions.groovy:54)
internetstore-application-1 | at org.codehaus.groovy.vmplugin.v8.IndyInterface.fromCache(IndyInterface.java:321)
internetstore-application-1 | at nz.net.ultraq.thymeleaf.layoutdialect.models.extensions.IProcessableElementTagExtensions.equalsIgnoreXmlnsAndWith(IProcessableElementTagExtensions.groovy:60)
internetstore-application-1 | at org.codehaus.groovy.vmplugin.v8.IndyInterface.fromCache(IndyInterface.java:321)
internetstore-application-1 | at nz.net.ultraq.thymeleaf.layoutdialect.decorators.DecorateProcessor.doProcess(DecorateProcessor.groovy:103)
internetstore-application-1 | at org.thymeleaf.processor.element.AbstractAttributeModelProcessor.doProcess(AbstractAttributeModelProcessor.java:77)
internetstore-application-1 | ... 107 common frames omitted
internetstore-application-1 | 20:25:36.809 DEBUG o.s.o.j.s.OpenEntityManagerInViewInterceptor - Closing JPA EntityManager in OpenEntityManagerInViewInterceptor
internetstore-application-1 | 20:25:36.809 DEBUG o.s.web.servlet.DispatcherServlet - Failed to complete request: org.thymeleaf.exceptions.TemplateProcessingException: Error during execution of processor 'nz.net.ultraq.thymeleaf.layoutdialect.decorators.DecorateProcessor' (template: "pages/products" - line 5, col 7)
internetstore-application-1 | 20:25:36.810 ERROR o.a.c.c.C.[.[.[.[dispatcherServlet] - Servlet.service() for servlet [dispatcherServlet] in context with path [] threw exception [Request processing failed: org.thymeleaf.exceptions.TemplateProcessingException: Error during execution of processor 'nz.net.ultraq.thymeleaf.layoutdialect.decorators.DecorateProcessor' (template: "pages/products" - line 5, col 7)] with root cause
internetstore-application-1 | groovy.lang.MissingMethodException: No signature of method: org.thymeleaf.context.WebEngineContext.getOrCreate() is applicable for argument types: (String, nz.net.ultraq.thymeleaf.layoutdialect.context.extensions.IContextExtensions$_getPrefixForDialect_closure1) values: [DialectPrefix::org.thymeleaf.standard.StandardDialect, nz.net.ultraq.thymeleaf.layoutdialect.context.extensions.IContextExtensions$_getPrefixForDialect_closure1@1d63ba33]
internetstore-application-1 | at org.codehaus.groovy.runtime.ScriptBytecodeAdapter.unwrap(ScriptBytecodeAdapter.java:72)
internetstore-application-1 | at org.codehaus.groovy.vmplugin.v8.IndyGuardsFiltersAndSignatures.unwrap(IndyGuardsFiltersAndSignatures.java:161)
internetstore-application-1 | at org.codehaus.groovy.vmplugin.v8.IndyInterface.fromCache(IndyInterface.java:321)
internetstore-application-1 | at nz.net.ultraq.thymeleaf.layoutdialect.context.extensions.IContextExtensions.getPrefixForDialect(IContextExtensions.groovy:54)
internetstore-application-1 | at org.codehaus.groovy.vmplugin.v8.IndyInterface.fromCache(IndyInterface.java:321)
internetstore-application-1 | at nz.net.ultraq.thymeleaf.layoutdialect.models.extensions.IProcessableElementTagExtensions.equalsIgnoreXmlnsAndWith(IProcessableElementTagExtensions.groovy:60)
internetstore-application-1 | at org.codehaus.groovy.vmplugin.v8.IndyInterface.fromCache(IndyInterface.java:321)
internetstore-application-1 | at nz.net.ultraq.thymeleaf.layoutdialect.decorators.DecorateProcessor.doProcess(DecorateProcessor.groovy:103)
internetstore-application-1 | at org.thymeleaf.processor.element.AbstractAttributeModelProcessor.doProcess(AbstractAttributeModelProcessor.java:77)
internetstore-application-1 | at org.thymeleaf.processor.element.AbstractElementModelProcessor.process(AbstractElementModelProcessor.java:98)
internetstore-application-1 | at org.thymeleaf.util.ProcessorConfigurationUtils$ElementModelProcessorWrapper.process(ProcessorConfigurationUtils.java:649)
internetstore-application-1 | at org.thymeleaf.engine.ProcessorTemplateHandler.handleOpenElement(ProcessorTemplateHandler.java:1510)
internetstore-application-1 | at org.thymeleaf.engine.OpenElementTag.beHandled(OpenElementTag.java:205)
internetstore-application-1 | at org.thymeleaf.engine.Model.process(Model.java:282)
internetstore-application-1 | at org.thymeleaf.engine.Model.process(Model.java:290)
internetstore-application-1 | at org.thymeleaf.engine.GatheringModelProcessable.process(GatheringModelProcessable.java:78)
internetstore-application-1 | at org.thymeleaf.engine.ProcessorTemplateHandler.handleCloseElement(ProcessorTemplateHandler.java:1640)
internetstore-application-1 | at org.thymeleaf.engine.CloseElementTag.beHandled(CloseElementTag.java:139)
internetstore-application-1 | at org.thymeleaf.engine.TemplateModel.process(TemplateModel.java:136)
internetstore-application-1 | at org.thymeleaf.engine.TemplateManager.parseAndProcess(TemplateManager.java:661)
internetstore-application-1 | at org.thymeleaf.TemplateEngine.process(TemplateEngine.java:1103)
internetstore-application-1 | at org.thymeleaf.TemplateEngine.process(TemplateEngine.java:1077)
internetstore-application-1 | at org.thymeleaf.spring6.view.ThymeleafView.renderFragment(ThymeleafView.java:372)
internetstore-application-1 | at org.thymeleaf.spring6.view.ThymeleafView.render(ThymeleafView.java:192)
internetstore-application-1 | at org.springframework.web.servlet.DispatcherServlet.render(DispatcherServlet.java:1415)
Problem was solved via using of standart spring boot packaging manager instead of maven one
<plugin>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-maven-plugin</artifactId>
<configuration>
<excludes>
<exclude>
<groupId>org.projectlombok</groupId>
<artifactId>lombok</artifactId>
</exclude>
</excludes>
</configuration>
</plugin>
Glad to hear you managed to solve it, and interesting that the Spring Boot Maven plugin without lombok was the solution 👍
I'm using your library nz.net.ultraq.thymeleaf version 3.2.1 with Spring boot 3
The problem, that I faced with lean in using layout:decorate statement in my content page
Every time I run my app I got an error: Error during execution of processor 'nz.net.ultraq.thymeleaf.layoutdialect.decorators.DecorateProcessor'
GItHub (develop branch)