<#list posts.content as post>
<li class="item">
<div class="item-img">
<a class="item-img-inner" href="${post.fullPath!}" title="${post.title!}" target="_blank" rel="bookmark">
<img width="480" height="300" src="${theme_base!}/source/images/lazy.png" class="attachment-post-thumbnail size-post-thumbnail wp-post-image j-lazy" alt="${post.title!}" data-original="${post.thumbnail!}">
</a>
</div>
<div class="item-content">
<h2 class="item-title">
<a href="${post.fullPath!}" target="_blank" rel="bookmark">
${post.title!}
</a>
</h2>
<div class="item-excerpt">
<p>${post.summary!}</p>
</div>
<div class="item-meta">
<span class="item-meta-li date">${post.createTime!}</span>
<div class="item-meta-right">
<span class="item-meta-li views" title="阅读数"><i class="wpcom-icon wi"><svg aria-hidden="true"><use xlink:href="/#wi-eye"/></svg></i> ${post.visits!}</span>
</div>
</div>
</div>
</li>
</#list>
文章首页,获取首页文章报下方的错误。
2021-07-07 09:21:09.380 ERROR 67831 --- [qtp438123546-165] freemarker.runtime : Error executing FreeMarker template
freemarker.core.NonHashException: For "." left-hand operand: Expected a hash, but this has evaluated to a sequence (ArrayList wrapped into f.t.DefaultListAdapter):
==> posts [in template "themes/halo-theme-iwtwin/module/post_entry.ftl" at line 1, column 8]
----
FTL stack trace ("~" means nesting-related):
- Failed at: #list posts.content as post [in template "themes/halo-theme-iwtwin/module/post_entry.ftl" at line 1, column 1]
- Reached through: #include "module/post_entry.ftl" [in template "themes/halo-theme-iwtwin/index.ftl" at line 58, column 21]
----
at freemarker.core.Dot._eval(Dot.java:48) ~[freemarker-2.3.31.jar!/:2.3.31]
at freemarker.core.Expression.eval(Expression.java:101) ~[freemarker-2.3.31.jar!/:2.3.31]
at freemarker.core.IteratorBlock.acceptWithResult(IteratorBlock.java:99) ~[freemarker-2.3.31.jar!/:2.3.31]
at freemarker.core.IteratorBlock.accept(IteratorBlock.java:94) ~[freemarker-2.3.31.jar!/:2.3.31]
at freemarker.core.Environment.visit(Environment.java:347) ~[freemarker-2.3.31.jar!/:2.3.31]
at freemarker.core.Environment.include(Environment.java:2955) ~[freemarker-2.3.31.jar!/:2.3.31]
at freemarker.core.Include.accept(Include.java:171) ~[freemarker-2.3.31.jar!/:2.3.31]
at freemarker.core.Environment.visit(Environment.java:347) ~[freemarker-2.3.31.jar!/:2.3.31]
at freemarker.core.Environment.visit(Environment.java:353) ~[freemarker-2.3.31.jar!/:2.3.31]
at freemarker.core.Environment.process(Environment.java:326) ~[freemarker-2.3.31.jar!/:2.3.31]
at freemarker.template.Template.process(Template.java:383) ~[freemarker-2.3.31.jar!/:2.3.31]
at org.springframework.web.servlet.view.freemarker.FreeMarkerView.processTemplate(FreeMarkerView.java:391) ~[spring-webmvc-5.3.5.jar!/:5.3.5]
at org.springframework.web.servlet.view.freemarker.FreeMarkerView.doRender(FreeMarkerView.java:304) ~[spring-webmvc-5.3.5.jar!/:5.3.5]
at org.springframework.web.servlet.view.freemarker.FreeMarkerView.renderMergedTemplateModel(FreeMarkerView.java:255) ~[spring-webmvc-5.3.5.jar!/:5.3.5]
at org.springframework.web.servlet.view.AbstractTemplateView.renderMergedOutputModel(AbstractTemplateView.java:179) ~[spring-webmvc-5.3.5.jar!/:5.3.5]
at org.springframework.web.servlet.view.AbstractView.render(AbstractView.java:316) ~[spring-webmvc-5.3.5.jar!/:5.3.5]
at org.springframework.web.servlet.DispatcherServlet.render(DispatcherServlet.java:1393) ~[spring-webmvc-5.3.5.jar!/:5.3.5]
at org.springframework.web.servlet.DispatcherServlet.processDispatchResult(DispatcherServlet.java:1138) ~[spring-webmvc-5.3.5.jar!/:5.3.5]
at org.springframework.web.servlet.DispatcherServlet.doDispatch(DispatcherServlet.java:1077) ~[spring-webmvc-5.3.5.jar!/:5.3.5]
at org.springframework.web.servlet.DispatcherServlet.doService(DispatcherServlet.java:962) ~[spring-webmvc-5.3.5.jar!/:5.3.5]
at org.springframework.web.servlet.FrameworkServlet.processRequest(FrameworkServlet.java:1006) ~[spring-webmvc-5.3.5.jar!/:5.3.5]
at org.springframework.web.servlet.FrameworkServlet.doGet(FrameworkServlet.java:898) ~[spring-webmvc-5.3.5.jar!/:5.3.5]
at javax.servlet.http.HttpServlet.service(HttpServlet.java:497) ~[jakarta.servlet-api-4.0.4.jar!/:4.0.4]
at org.springframework.web.servlet.FrameworkServlet.service(FrameworkServlet.java:883) ~[spring-webmvc-5.3.5.jar!/:5.3.5]
at javax.servlet.http.HttpServlet.service(HttpServlet.java:584) ~[jakarta.servlet-api-4.0.4.jar!/:4.0.4]
at org.eclipse.jetty.servlet.ServletHolder.handle(ServletHolder.java:791) ~[jetty-servlet-9.4.38.v20210224.jar!/:9.4.38.v20210224]
at org.eclipse.jetty.servlet.ServletHandler$ChainEnd.doFilter(ServletHandler.java:1626) ~[jetty-servlet-9.4.38.v20210224.jar!/:9.4.38.v20210224]
at org.eclipse.jetty.websocket.server.WebSocketUpgradeFilter.doFilter(WebSocketUpgradeFilter.java:228) ~[websocket-server-9.4.38.v20210224.jar!/:9.4.38.v20210224]
at org.eclipse.jetty.servlet.FilterHolder.doFilter(FilterHolder.java:193) ~[jetty-servlet-9.4.38.v20210224.jar!/:9.4.38.v20210224]
at org.eclipse.jetty.servlet.ServletHandler$Chain.doFilter(ServletHandler.java:1601) ~[jetty-servlet-9.4.38.v20210224.jar!/:9.4.38.v20210224]
at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:103) ~[spring-web-5.3.5.jar!/:5.3.5]
at org.eclipse.jetty.servlet.FilterHolder.doFilter(FilterHolder.java:193) ~[jetty-servlet-9.4.38.v20210224.jar!/:9.4.38.v20210224]
at org.eclipse.jetty.servlet.ServletHandler$Chain.doFilter(ServletHandler.java:1601) ~[jetty-servlet-9.4.38.v20210224.jar!/:9.4.38.v20210224]
at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:103) ~[spring-web-5.3.5.jar!/:5.3.5]
at org.eclipse.jetty.servlet.FilterHolder.doFilter(FilterHolder.java:193) ~[jetty-servlet-9.4.38.v20210224.jar!/:9.4.38.v20210224]
at org.eclipse.jetty.servlet.ServletHandler$Chain.doFilter(ServletHandler.java:1601) ~[jetty-servlet-9.4.38.v20210224.jar!/:9.4.38.v20210224]
at run.halo.app.security.filter.ContentFilter.doAuthenticate(ContentFilter.java:59) ~[classes!/:1.4.8]
at run.halo.app.security.filter.AbstractAuthenticationFilter.doFilterInternal(AbstractAuthenticationFilter.java:229) ~[classes!/:1.4.8]
at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:119) ~[spring-web-5.3.5.jar!/:5.3.5]
at org.eclipse.jetty.servlet.FilterHolder.doFilter(FilterHolder.java:193) ~[jetty-servlet-9.4.38.v20210224.jar!/:9.4.38.v20210224]
at org.eclipse.jetty.servlet.ServletHandler$Chain.doFilter(ServletHandler.java:1601) ~[jetty-servlet-9.4.38.v20210224.jar!/:9.4.38.v20210224]
at org.springframework.web.filter.RequestContextFilter.doFilterInternal(RequestContextFilter.java:100) ~[spring-web-5.3.5.jar!/:5.3.5]
at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:119) ~[spring-web-5.3.5.jar!/:5.3.5]
at org.eclipse.jetty.servlet.FilterHolder.doFilter(FilterHolder.java:193) ~[jetty-servlet-9.4.38.v20210224.jar!/:9.4.38.v20210224]
at org.eclipse.jetty.servlet.ServletHandler$Chain.doFilter(ServletHandler.java:1601) ~[jetty-servlet-9.4.38.v20210224.jar!/:9.4.38.v20210224]
at org.springframework.web.filter.FormContentFilter.doFilterInternal(FormContentFilter.java:93) ~[spring-web-5.3.5.jar!/:5.3.5]
at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:119) ~[spring-web-5.3.5.jar!/:5.3.5]
at org.eclipse.jetty.servlet.FilterHolder.doFilter(FilterHolder.java:193) ~[jetty-servlet-9.4.38.v20210224.jar!/:9.4.38.v20210224]
at org.eclipse.jetty.servlet.ServletHandler$Chain.doFilter(ServletHandler.java:1601) ~[jetty-servlet-9.4.38.v20210224.jar!/:9.4.38.v20210224]
at run.halo.app.filter.CorsFilter.doFilter(CorsFilter.java:53) ~[classes!/:1.4.8]
at org.eclipse.jetty.servlet.FilterHolder.doFilter(FilterHolder.java:193) ~[jetty-servlet-9.4.38.v20210224.jar!/:9.4.38.v20210224]
at org.eclipse.jetty.servlet.ServletHandler$Chain.doFilter(ServletHandler.java:1601) ~[jetty-servlet-9.4.38.v20210224.jar!/:9.4.38.v20210224]
at org.springframework.boot.actuate.metrics.web.servlet.WebMvcMetricsFilter.doFilterInternal(WebMvcMetricsFilter.java:93) ~[spring-boot-actuator-2.5.0-M3.jar!/:2.5.0-M3]
at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:119) ~[spring-web-5.3.5.jar!/:5.3.5]
at org.eclipse.jetty.servlet.FilterHolder.doFilter(FilterHolder.java:193) ~[jetty-servlet-9.4.38.v20210224.jar!/:9.4.38.v20210224]
at org.eclipse.jetty.servlet.ServletHandler$Chain.doFilter(ServletHandler.java:1601) ~[jetty-servlet-9.4.38.v20210224.jar!/:9.4.38.v20210224]
at org.springframework.web.filter.CharacterEncodingFilter.doFilterInternal(CharacterEncodingFilter.java:201) ~[spring-web-5.3.5.jar!/:5.3.5]
at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:119) ~[spring-web-5.3.5.jar!/:5.3.5]
at org.eclipse.jetty.servlet.FilterHolder.doFilter(FilterHolder.java:193) ~[jetty-servlet-9.4.38.v20210224.jar!/:9.4.38.v20210224]
at org.eclipse.jetty.servlet.ServletHandler$Chain.doFilter(ServletHandler.java:1601) ~[jetty-servlet-9.4.38.v20210224.jar!/:9.4.38.v20210224]
at run.halo.app.filter.LogFilter.doFilterInternal(LogFilter.java:40) ~[classes!/:1.4.8]