JPressProjects / jpress

JPress,一个使用 Java 开发的建站神器,目前已经有 10w+ 网站使用 JPress 进行驱动,其中包括多个政府机构,200+上市公司,中科院、红+字会等。
http://www.jpress.cn
GNU Lesser General Public License v3.0
2.67k stars 1.18k forks source link

后台管理系统出错 #21

Closed yuandi0823 closed 8 years ago

yuandi0823 commented 8 years ago
  1. 环境-WIN10(64)-JDK7
  2. 版本-最新版本
  3. 问题-登录后台后点击[撰写文章]及其它二级栏目都报错,错误如下:

2016-09-01 00:43:55 [ERROR]-[Thread: btpool0-4]-[freemarker.log._Log4jLoggerFactory$Log4jLogger.error()]: Error executing FreeMarker template FreeMarker template error: For "." left-hand operand: Expected a hash, but this has evaluated to a directive (wrapper: io.jpress.ui.freemarker.tag.ContentTag): ==> content [in template "WEB-INF/admin/content/_edit_default_include.html" at line 7, column 70] FTL stack trace ("~" means nesting-related):

freemarker.core.NonHashException: [... Exception message was already printed; see it above ...] at freemarker.core.Dot._eval(Dot.java:45) at freemarker.core.Expression.eval(Expression.java:78) at freemarker.core.ParentheticalExpression._eval(ParentheticalExpression.java:44) at freemarker.core.Expression.eval(Expression.java:78) at freemarker.core.DefaultToExpression._eval(DefaultToExpression.java:73) at freemarker.core.Expression.eval(Expression.java:78) at freemarker.core.Expression.evalAndCoerceToString(Expression.java:82) at freemarker.core.DollarVariable.accept(DollarVariable.java:41) at freemarker.core.Environment.visit(Environment.java:324) at freemarker.core.MixedContent.accept(MixedContent.java:54) at freemarker.core.Environment.visit(Environment.java:324) at freemarker.core.Environment.include(Environment.java:2072) at freemarker.core.Include.accept(Include.java:167) at freemarker.core.Environment.visit(Environment.java:324) at freemarker.core.Environment.invokeNestedContent(Environment.java:546) at freemarker.core.BodyInstruction.accept(BodyInstruction.java:56) at freemarker.core.Environment.visit(Environment.java:324) at freemarker.core.MixedContent.accept(MixedContent.java:54) at freemarker.core.Environment.visit(Environment.java:324) at freemarker.core.Macro$Context.runMacro(Macro.java:184) at freemarker.core.Environment.invoke(Environment.java:701) at freemarker.core.UnifiedCall.accept(UnifiedCall.java:84) at freemarker.core.Environment.visit(Environment.java:324) at freemarker.core.MixedContent.accept(MixedContent.java:54) at freemarker.core.Environment.visit(Environment.java:324) at freemarker.core.Environment.process(Environment.java:302) at freemarker.template.Template.process(Template.java:325) at com.jfinal.render.FreeMarkerRender.render(FreeMarkerRender.java:145) at io.jpress.core.render.JFreemarkerRender.render(JFreemarkerRender.java:54) at com.jfinal.core.ActionHandler.handle(ActionHandler.java:97) at io.jpress.core.MyDruidStatViewHandler.handle(MyDruidStatViewHandler.java:43) at io.jpress.core.cache.ActionCacheHandler.handle(ActionCacheHandler.java:49) at io.jpress.core.JHandler.handle(JHandler.java:81) at io.jpress.core.cache.ActionCacheHandler.handle(ActionCacheHandler.java:49) at com.jfinal.core.JFinalFilter.doFilter(JFinalFilter.java:72) at org.mortbay.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1084) at org.mortbay.jetty.servlet.ServletHandler.handle(ServletHandler.java:360) at org.mortbay.jetty.security.SecurityHandler.handle(SecurityHandler.java:216) at org.mortbay.jetty.servlet.SessionHandler.handle(SessionHandler.java:181) at org.mortbay.jetty.handler.ContextHandler.handle(ContextHandler.java:726) at org.mortbay.jetty.webapp.WebAppContext.handle(WebAppContext.java:405) at org.mortbay.jetty.handler.ContextHandlerCollection.handle(ContextHandlerCollection.java:206) at org.mortbay.jetty.handler.HandlerCollection.handle(HandlerCollection.java:114) at org.mortbay.jetty.handler.HandlerWrapper.handle(HandlerWrapper.java:152) at org.mortbay.jetty.Server.handle(Server.java:324) at org.mortbay.jetty.HttpConnection.handleRequest(HttpConnection.java:505) at org.mortbay.jetty.HttpConnection$RequestHandler.headerComplete(HttpConnection.java:829) at org.mortbay.jetty.HttpParser.parseNext(HttpParser.java:514) at org.mortbay.jetty.HttpParser.parseAvailable(HttpParser.java:211) at org.mortbay.jetty.HttpConnection.handle(HttpConnection.java:380) at org.mortbay.io.nio.SelectChannelEndPoint.run(SelectChannelEndPoint.java:395) at org.mortbay.thread.QueuedThreadPool$PoolThread.run(QueuedThreadPool.java:488)

2016-09-01 00:43:55

com.jfinal.render.RenderException: freemarker.core.NonHashException: For "." left-hand operand: Expected a hash, but this has evaluated to a directive (wrapper: io.jpress.ui.freemarker.tag.ContentTag): ==> content [in template "WEB-INF/admin/content/_edit_default_include.html" at line 7, column 70]


FTL stack trace ("~" means nesting-related):

at com.jfinal.render.FreeMarkerRender.render(FreeMarkerRender.java:147)
at io.jpress.core.render.JFreemarkerRender.render(JFreemarkerRender.java:54)
at com.jfinal.core.ActionHandler.handle(ActionHandler.java:97)
at io.jpress.core.MyDruidStatViewHandler.handle(MyDruidStatViewHandler.java:43)
at io.jpress.core.cache.ActionCacheHandler.handle(ActionCacheHandler.java:49)
at io.jpress.core.JHandler.handle(JHandler.java:81)
at io.jpress.core.cache.ActionCacheHandler.handle(ActionCacheHandler.java:49)
at com.jfinal.core.JFinalFilter.doFilter(JFinalFilter.java:72)
at org.mortbay.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1084)
at org.mortbay.jetty.servlet.ServletHandler.handle(ServletHandler.java:360)
at org.mortbay.jetty.security.SecurityHandler.handle(SecurityHandler.java:216)
at org.mortbay.jetty.servlet.SessionHandler.handle(SessionHandler.java:181)
at org.mortbay.jetty.handler.ContextHandler.handle(ContextHandler.java:726)
at org.mortbay.jetty.webapp.WebAppContext.handle(WebAppContext.java:405)
at org.mortbay.jetty.handler.ContextHandlerCollection.handle(ContextHandlerCollection.java:206)
at org.mortbay.jetty.handler.HandlerCollection.handle(HandlerCollection.java:114)
at org.mortbay.jetty.handler.HandlerWrapper.handle(HandlerWrapper.java:152)
at org.mortbay.jetty.Server.handle(Server.java:324)
at org.mortbay.jetty.HttpConnection.handleRequest(HttpConnection.java:505)
at org.mortbay.jetty.HttpConnection$RequestHandler.headerComplete(HttpConnection.java:829)
at org.mortbay.jetty.HttpParser.parseNext(HttpParser.java:514)
at org.mortbay.jetty.HttpParser.parseAvailable(HttpParser.java:211)
at org.mortbay.jetty.HttpConnection.handle(HttpConnection.java:380)
at org.mortbay.io.nio.SelectChannelEndPoint.run(SelectChannelEndPoint.java:395)
at org.mortbay.thread.QueuedThreadPool$PoolThread.run(QueuedThreadPool.java:488)

Caused by: freemarker.core.NonHashException: For "." left-hand operand: Expected a hash, but this has evaluated to a directive (wrapper: io.jpress.ui.freemarker.tag.ContentTag): ==> content [in template "WEB-INF/admin/content/_edit_default_include.html" at line 7, column 70]


FTL stack trace ("~" means nesting-related):

at freemarker.core.Dot._eval(Dot.java:45)
at freemarker.core.Expression.eval(Expression.java:78)
at freemarker.core.ParentheticalExpression._eval(ParentheticalExpression.java:44)
at freemarker.core.Expression.eval(Expression.java:78)
at freemarker.core.DefaultToExpression._eval(DefaultToExpression.java:73)
at freemarker.core.Expression.eval(Expression.java:78)
at freemarker.core.Expression.evalAndCoerceToString(Expression.java:82)
at freemarker.core.DollarVariable.accept(DollarVariable.java:41)
at freemarker.core.Environment.visit(Environment.java:324)
at freemarker.core.MixedContent.accept(MixedContent.java:54)
at freemarker.core.Environment.visit(Environment.java:324)
at freemarker.core.Environment.include(Environment.java:2072)
at freemarker.core.Include.accept(Include.java:167)
at freemarker.core.Environment.visit(Environment.java:324)
at freemarker.core.Environment.invokeNestedContent(Environment.java:546)
at freemarker.core.BodyInstruction.accept(BodyInstruction.java:56)
at freemarker.core.Environment.visit(Environment.java:324)
at freemarker.core.MixedContent.accept(MixedContent.java:54)
at freemarker.core.Environment.visit(Environment.java:324)
at freemarker.core.Macro$Context.runMacro(Macro.java:184)
at freemarker.core.Environment.invoke(Environment.java:701)
at freemarker.core.UnifiedCall.accept(UnifiedCall.java:84)
at freemarker.core.Environment.visit(Environment.java:324)
at freemarker.core.MixedContent.accept(MixedContent.java:54)
at freemarker.core.Environment.visit(Environment.java:324)
at freemarker.core.Environment.process(Environment.java:302)
at freemarker.template.Template.process(Template.java:325)
at com.jfinal.render.FreeMarkerRender.render(FreeMarkerRender.java:145)
... 24 more
yangfuhai commented 8 years ago

最新代码已经修复,请更新最新代码。另:在使用的时候用已经更新的war包,最新代码可能不稳定。