{"action":"created","issue":{"url":"https://api.github.com/repos/wisdom-framework/wisdom/issues/528","labels_url":"https://api.github.com/repos/wisdom-framework/wisdom/issues/528/labels{/name}","comments_url":"https://api.github.com/repos/wisdom-framework/wisdom/issues/528/comments","events_url":"https://api.github.com/repos/wisdom-framework/wisdom/issues/528/events","html_url":"https://github.com/wisdom-framework/wisdom/issues/528","id":101438463,"number":528,"title":"TemplateInputException in 0.9.2-SNAPSHOT","user":{"login":"agonist","id":2346698,"avatar_url":"https://avatars.githubusercontent.com/u/2346698?v=3","gravatar_id":"","url":"https://api.github.com/users/agonist","html_url":"https://github.com/agonist","followers_url":"https://api.github.com/users/agonist/followers","following_url":"https://api.github.com/users/agonist/following{/other_user}","gists_url":"https://api.github.com/users/agonist/gists{/gist_id}","starred_url":"https://api.github.com/users/agonist/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/agonist/subscriptions","organizations_url":"https://api.github.com/users/agonist/orgs","repos_url":"https://api.github.com/users/agonist/repos","events_url":"https://api.github.com/users/agonist/events{/privacy}","received_events_url":"https://api.github.com/users/agonist/received_events","type":"User","site_admin":false},"labels":[],"state":"open","locked":false,"assignee":null,"milestone":null,"comments":1,"created_at":"2015-08-17T14:49:03Z","updated_at":"2015-09-21T14:17:40Z","closed_at":null,"body":"I'm using the snapshot version and the monitor extension seems to be broken.\r\n\r\nIf you sign in to http://localhost:9000/monitor/\r\n\r\nan exception appear : \r\n\r\neasy to reproduce with an empty wisdom project\r\n\r\n```\r\n[1;31m[ERROR]   o.w.t.t.i.WisdomURLResourceResolver\u001B[0;39m \u001B[36m{vert.x-eventloop-thread-0}\u001B[0;39m - Cannot resolve the template monitor\\layout, neither monitor\\layout nor monitor\\layout.thl.html exist in the template directory or is available in bundles.\r\n\u001B[1;31m[ERROR]   o.t.TemplateEngine\u001B[0;39m \u001B[36m{vert.x-eventloop-thread-0}\u001B[0;39m - [THYMELEAF][vert.x-eventloop-thread-0] Exception processing template \"bundle://56.0:0/templates/monitor/dashboard.thl.html\": Error resolving template \"layout\", template might not exist or might not be accessible by any of the configured Template Resolvers (bundle://56.0:0/templates/monitor/dashboard.thl.html:21)\r\n\u001B[1;31m[ERROR]   wisdom-error\u001B[0;39m \u001B[36m{vert.x-eventloop-thread-0}\u001B[0;39m - An exception occurred while processing request GET /monitor/dashboard\r\norg.thymeleaf.exceptions.TemplateInputException: Error resolving template \"layout\", template might not exist or might not be accessible by any of the configured Template Resolvers (bundle://56.0:0/templates/monitor/dashboard.thl.html:21)\r\n        at org.thymeleaf.TemplateRepository.getTemplate(TemplateRepository.java:245) ~[na:na]\r\n        at nz.net.ultraq.thymeleaf.decorator.DecoratorProcessor.processAttribute(DecoratorProcessor.java:92) ~[na:na]\r\n        at org.thymeleaf.processor.attr.AbstractAttrProcessor.doProcess(AbstractAttrProcessor.java:87) ~[na:na]\r\n        at org.thymeleaf.processor.AbstractProcessor.process(AbstractProcessor.java:212) ~[na:na]\r\n        at org.thymeleaf.dom.Node.applyNextProcessor(Node.java:1016) ~[na:na]\r\n        at org.thymeleaf.dom.Node.processNode(Node.java:971) ~[na:na]\r\n        at org.thymeleaf.dom.NestableNode.computeNextChild(NestableNode.java:672) ~[na:na]\r\n        at org.thymeleaf.dom.NestableNode.doAdditionalProcess(NestableNode.java:655) ~[na:na]\r\n        at org.thymeleaf.dom.Node.processNode(Node.java:990) ~[na:na]\r\n        at org.thymeleaf.dom.Document.process(Document.java:93) ~[na:na]\r\n        at org.thymeleaf.TemplateEngine.process(TemplateEngine.java:1155) ~[na:na]\r\n        at org.thymeleaf.TemplateEngine.process(TemplateEngine.java:1060) ~[na:na]\r\n        at org.thymeleaf.TemplateEngine.process(TemplateEngine.java:1011) ~[na:na]\r\n        at org.thymeleaf.TemplateEngine.process(TemplateEngine.java:955) ~[na:na]\r\n        at org.wisdom.template.thymeleaf.impl.WisdomTemplateEngine.process(WisdomTemplateEngine.java:101) ~[na:na]\r\n        at org.wisdom.template.thymeleaf.impl.ThymeLeafTemplateImplementation.render(ThymeLeafTemplateImplementation.java:148) ~[na:na]\r\n        at org.wisdom.template.thymeleaf.impl.ThymeLeafTemplateImplementation.render(ThymeLeafTemplateImplementation.java:160) ~[na:na]\r\n        at org.wisdom.api.templates.Template$$Proxy.render(Unknown Source) ~[na:na]\r\n        at org.wisdom.api.DefaultController.render(DefaultController.java:188) ~[wisdom-api-0.9.2-SNAPSHOT.jar:na]\r\n        at org.wisdom.monitor.extensions.dashboard.DashboardExtension.__M_index(DashboardExtension.java:287) ~[na:na]\r\n        at org.wisdom.monitor.extensions.dashboard.DashboardExtension.index(DashboardExtension.java) ~[na:na]\r\n        at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) ~[na:1.8.0_45]\r\n        at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) ~[na:1.8.0_45]\r\n        at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) ~[na:1.8.0_45]\r\n        at java.lang.reflect.Method.invoke(Method.java:497) ~[na:1.8.0_45]\r\n        at org.wisdom.router.RouteDelegate$EndOfChainInvoker.call(RouteDelegate.java:333) ~[na:na]\r\n        at org.wisdom.api.interception.RequestContext.proceed(RequestContext.java:124) [wisdom-api-0.9.2-SNAPSHOT.jar:na]\r\n        at org.wisdom.router.security.AuthenticationInterceptor.__M_call(AuthenticationInterceptor.java:79) ~[na:na]\r\n        at org.wisdom.router.security.AuthenticationInterceptor.call(AuthenticationInterceptor.java) ~[na:na]\r\n        at org.wisdom.router.security.AuthenticationInterceptor.__M_call(AuthenticationInterceptor.java:39) ~[na:na]\r\n        at org.wisdom.router.security.AuthenticationInterceptor.call(AuthenticationInterceptor.java) ~[na:na]\r\n        at org.wisdom.api.interception.Interceptor.call(Interceptor.java:64) ~[wisdom-api-0.9.2-SNAPSHOT.jar:na]\r\n        at org.wisdom.api.interception.RequestContext.proceed(RequestContext.java:124) [wisdom-api-0.9.2-SNAPSHOT.jar:na]\r\n        at org.wisdom.error.DefaultPageErrorHandler.__M_call(DefaultPageErrorHandler.java:236) [default-error-handler-0.9.2-SNAPSHOT.jar:na]\r\n        at org.wisdom.error.DefaultPageErrorHandler.call(DefaultPageErrorHandler.java) [default-error-handler-0.9.2-SNAPSHOT.jar:na]\r\n        at org.wisdom.api.interception.RequestContext.proceed(RequestContext.java:124) [wisdom-api-0.9.2-SNAPSHOT.jar:na]\r\n        at org.wisdom.monitor.extensions.dashboard.HttpMetricFilter.call(HttpMetricFilter.java:126) [org.wisdom.framework.wisdom.monitor-0.9.2-20150615.165810-14.jar:na]\r\n        at org.wisdom.api.interception.RequestContext.proceed(RequestContext.java:124) [wisdom-api-0.9.2-SNAPSHOT.jar:na]\r\n        at org.wisdom.router.RouteDelegate.invoke(RouteDelegate.java:247) [router-0.9.2-SNAPSHOT.jar:na]\r\n        at org.wisdom.framework.vertx.HttpHandler.invoke(HttpHandler.java:173) [wisdom-vertx-engine-0.9.2-SNAPSHOT.jar:4.0.27.Final]\r\n        at org.wisdom.framework.vertx.HttpHandler.dispatch(HttpHandler.java:146) [wisdom-vertx-engine-0.9.2-SNAPSHOT.jar:4.0.27.Final]\r\n        at org.wisdom.framework.vertx.HttpHandler.access$200(HttpHandler.java:51) [wisdom-vertx-engine-0.9.2-SNAPSHOT.jar:4.0.27.Final]\r\n        at org.wisdom.framework.vertx.HttpHandler$2.handle(HttpHandler.java:105) [wisdom-vertx-engine-0.9.2-SNAPSHOT.jar:4.0.27.Final]\r\n        at org.vertx.java.core.VoidHandler.handle(VoidHandler.java:27) [wisdom-vertx-engine-0.9.2-SNAPSHOT.jar:4.0.27.Final]\r\n        at org.vertx.java.core.VoidHandler.handle(VoidHandler.java:24) [wisdom-vertx-engine-0.9.2-SNAPSHOT.jar:4.0.27.Final]\r\n        at org.vertx.java.core.http.impl.DefaultHttpServerRequest.handleEnd(DefaultHttpServerRequest.java:334) [wisdom-vertx-engine-0.9.2-SNAPSHOT.jar:4.0.27.Final]\r\n        at org.vertx.java.core.http.impl.ServerConnection.handleEnd(ServerConnection.java:209) [wisdom-vertx-engine-0.9.2-SNAPSHOT.jar:4.0.27.Final]\r\n        at org.vertx.java.core.http.impl.ServerConnection.processMessage(ServerConnection.java:313) [wisdom-vertx-engine-0.9.2-SNAPSHOT.jar:4.0.27.Final]\r\n        at org.vertx.java.core.http.impl.ServerConnection.handleMessage(ServerConnection.java:94) [wisdom-vertx-engine-0.9.2-SNAPSHOT.jar:4.0.27.Final]\r\n        at org.vertx.java.core.http.impl.DefaultHttpServer$ServerHandler.doMessageReceived(DefaultHttpServer.java:710) [wisdom-vertx-engine-0.9.2-SNAPSHOT.jar:4.0.27.Final]\r\n        at org.vertx.java.core.http.impl.DefaultHttpServer$ServerHandler.doMessageReceived(DefaultHttpServer.java:600) [wisdom-vertx-engine-0.9.2-SNAPSHOT.jar:4.0.27.Final]\r\n        at org.vertx.java.core.http.impl.VertxHttpHandler.channelRead(VertxHttpHandler.java:72) [wisdom-vertx-engine-0.9.2-SNAPSHOT.jar:4.0.27.Final]\r\n        at org.vertx.java.core.net.impl.VertxHandler.channelRead(VertxHandler.java:155) [wisdom-vertx-engine-0.9.2-SNAPSHOT.jar:4.0.27.Final]\r\n        at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:339) [netty-transport-4.0.27.Final.jar:4.0.27.Final]\r\n        at io.netty.channel.AbstractChannelHandlerContext.fireChannelRead(AbstractChannelHandlerContext.java:324) [netty-transport-4.0.27.Final.jar:4.0.27.Final]\r\n        at io.netty.channel.ChannelInboundHandlerAdapter.channelRead(ChannelInboundHandlerAdapter.java:86) [netty-transport-4.0.27.Final.jar:4.0.27.Final]\r\n        at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:339) [netty-transport-4.0.27.Final.jar:4.0.27.Final]\r\n        at io.netty.channel.AbstractChannelHandlerContext.fireChannelRead(AbstractChannelHandlerContext.java:324) [netty-transport-4.0.27.Final.jar:4.0.27.Final]\r\n        at io.netty.handler.codec.MessageToMessageDecoder.channelRead(MessageToMessageDecoder.java:103) [netty-codec-4.0.27.Final.jar:4.0.27.Final]\r\n        at io.netty.handler.codec.MessageToMessageCodec.channelRead(MessageToMessageCodec.java:111) [netty-codec-4.0.27.Final.jar:4.0.27.Final]\r\n        at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:339) [netty-transport-4.0.27.Final.jar:4.0.27.Final]\r\n        at io.netty.channel.AbstractChannelHandlerContext.fireChannelRead(AbstractChannelHandlerContext.java:324) [netty-transport-4.0.27.Final.jar:4.0.27.Final]\r\n        at io.netty.handler.codec.ByteToMessageDecoder.channelRead(ByteToMessageDecoder.java:242) [netty-codec-4.0.27.Final.jar:4.0.27.Final]\r\n        at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:339) [netty-transport-4.0.27.Final.jar:4.0.27.Final]\r\n        at io.netty.channel.AbstractChannelHandlerContext.fireChannelRead(AbstractChannelHandlerContext.java:324) [netty-transport-4.0.27.Final.jar:4.0.27.Final]\r\n        at io.netty.channel.DefaultChannelPipeline.fireChannelRead(DefaultChannelPipeline.java:847) [netty-transport-4.0.27.Final.jar:4.0.27.Final]\r\n        at io.netty.channel.nio.AbstractNioByteChannel$NioByteUnsafe.read(AbstractNioByteChannel.java:131) [netty-transport-4.0.27.Final.jar:4.0.27.Final]\r\n        at io.netty.channel.nio.NioEventLoop.processSelectedKey(NioEventLoop.java:511) [netty-transport-4.0.27.Final.jar:4.0.27.Final]\r\n        at io.netty.channel.nio.NioEventLoop.processSelectedKeysOptimized(NioEventLoop.java:468) [netty-transport-4.0.27.Final.jar:4.0.27.Final]\r\n        at io.netty.channel.nio.NioEventLoop.processSelectedKeys(NioEventLoop.java:382) [netty-transport-4.0.27.Final.jar:4.0.27.Final]\r\n        at io.netty.channel.nio.NioEventLoop.run(NioEventLoop.java:354) [netty-transport-4.0.27.Final.jar:4.0.27.Final]\r\n        at io.netty.util.concurrent.SingleThreadEventExecutor$2.run(SingleThreadEventExecutor.java:111) [netty-common-4.0.27.Final.jar:4.0.27.Final]\r\n        at java.lang.Thread.run(Thread.java:745) [na:1.8.0_45]\r\n``` "},"comment":{"url":"https://api.github.com/repos/wisdom-framework/wisdom/issues/comments/141996102","html_url":"https://github.com/wisdom-framework/wisdom/issues/528#issuecomment-141996102","issue_url":"https://api.github.com/repos/wisdom-framework/wisdom/issues/528","id":141996102,"user":{"login":"amischler","id":825294,"avatar_url":"https://avatars.githubusercontent.com/u/825294?v=3","gravatar_id":"","url":"https://api.github.com/users/amischler","html_url":"https://github.com/amischler","followers_url":"https://api.github.com/users/amischler/followers","following_url":"https://api.github.com/users/amischler/following{/other_user}","gists_url":"https://api.github.com/users/amischler/gists{/gist_id}","starred_url":"https://api.github.com/users/amischler/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/amischler/subscriptions","organizations_url":"https://api.github.com/users/amischler/orgs","repos_url":"https://api.github.com/users/amischler/repos","events_url":"https://api.github.com/users/amischler/events{/privacy}","received_events_url":"https://api.github.com/users/amischler/received_events","type":"User","site_admin":false},"created_at":"2015-09-21T14:17:40Z","updated_at":"2015-09-21T14:17:40Z","body":"Any update on this issue? (workaround, plan to fix it) \r\nThis is quite annoying since it prevents the wisdom-monitor from being used, which does not simplify debugging...and unfortunately we can't use the previous stable version due to required features in the SNAPSHOT version. Thanks."}}