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?
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 № 1Jeś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
.