/ / Spring Boot / Velocity Nie można znaleźć zasobu Błąd - Java, Spring, Spring-Boot, Velocity

Spring Boot / Velocity Nie można znaleźć zasobu Error - java, spring, spring-boot, velocity

Próbuję utworzyć aplikację Spring Bootpracować z zestawem szablonów prędkości. Trochę przeszukałem forum, znalazłem jakieś informacje, próbowałem je zaimplementować, ale nie mogłem go uruchomić. Czy możesz mi powiedzieć, co robię źle. Wciąż pojawia się ten błąd:

Unable to find resource "/VBS Template Files/StandardVariables.vm"

Podłączyłem moją strukturę folderów w Eclipse, wypróbowałem wszystkie możliwe kombinacje ścieżki. Ale wydaje się, że nic nie działa.

Nawiasem mówiąc, moja klasa kontrolerów jest w innym projekcie. Czy to spowodowałoby problem? wprowadź opis obrazu tutaj

Dodałem plik właściwości:

#VelcoityConfiguration
spring.velocity.resourceLoaderPath=classpath:/VBS Template Files/
spring.velocity.prefix=
spring.velocity.suffix=.vm
spring.velocity.cache=false
spring.velocity.check-template-location=false
spring.velocity.content-type=text/html
spring.velocity.charset=utf-8
spring.velocity.properties.input.encoding=utf-8
spring.velocity.properties.output.encoding=utf-8

Błąd jest generowany z tej linii:

for (String table : tableNames) {
mergeTemplate(table, "ISO-8859-1", velocityContext, writer);
}

Ślad stosu:

2018-03-20 23:21:38.960  INFO 16728 --- [  restartedMain] c.a.c.ConfigGeneratorApplication         : Started ConfigGeneratorApplication in 3.336 seconds (JVM running for 4.542)
2018-03-20 23:21:53.419  INFO 16728 --- [nio-8080-exec-3] o.a.c.c.C.[Tomcat].[localhost].[/]       : Initializing Spring FrameworkServlet "dispatcherServlet"
2018-03-20 23:21:53.420  INFO 16728 --- [nio-8080-exec-3] o.s.web.servlet.DispatcherServlet        : FrameworkServlet "dispatcherServlet": initialization started
2018-03-20 23:21:53.445  INFO 16728 --- [nio-8080-exec-3] o.s.web.servlet.DispatcherServlet        : FrameworkServlet "dispatcherServlet": initialization completed in 25 ms
2018-03-20 23:21:53.748  INFO 16728 --- [nio-8080-exec-3] c.a.l.palconfig.ActionMonitor            : PAL Config request contained invalid request data
2018-03-20 23:21:53.916  INFO 16728 --- [nio-8080-exec-3] c.a.l.v.utilities.VelocityBuilderAction  : VelocityBuilderAction processAction() started
2018-03-20 23:21:53.916  INFO 16728 --- [nio-8080-exec-3] c.a.l.v.utilities.VelocityBuilderAction  : Starting
2018-03-20 23:21:53.916  INFO 16728 --- [nio-8080-exec-3] c.a.l.v.utilities.VelocityBuilderAction  : ProcessConfigRequest received ...
2018-03-20 23:21:53.917  INFO 16728 --- [nio-8080-exec-3] c.a.l.v.utilities.VelocityBuilderAction  : ConfigRequest
2018-03-20 23:21:53.917  INFO 16728 --- [nio-8080-exec-3] c.a.l.v.utilities.VelocityBuilderAction  : Device = SAM01
2018-03-20 23:22:25.601 ERROR 16728 --- [nio-8080-exec-3] org.apache.velocity                      : ResourceManager : unable to find resource "/VBS Template Files/StandardVariables.vm" in any resource loader.
2018-03-20 23:25:01.886 ERROR 16728 --- [nio-8080-exec-3] c.a.l.v.utilities.VelocityJythonAdapter  : Error
2018-03-20 23:25:01.888  INFO 16728 --- [nio-8080-exec-3] c.a.l.v.utilities.VelocityBuilderAction  : VBS has returned the following data ...
2018-03-20 23:25:01.888  INFO 16728 --- [nio-8080-exec-3] c.a.l.v.utilities.VelocityBuilderAction  :
2018-03-20 23:25:01.889  INFO 16728 --- [nio-8080-exec-3] c.a.l.v.utilities.VelocityBuilderAction  : VelocityBuilderAction processAction() ended

Odpowiedzi:

0 dla odpowiedzi № 1

Jeśli ustawisz resourceLoaderPath do /VBS Template Files/, to nie możesz prosić /VBS Template Files/StandardVariables.vm w przeciwnym razie Velocity wyszuka /VBS Template Files/VBS Template Files/StandardVariables.vm.

Musisz tylko poprosić StandardVariables.vm.