FreeMarker template error (HTML_DEBUG mode; use RETHROW in production!)
For "(...)" enclosed operand: Expected a boolean, but this has evaluated to a string (wrapper: f.t.SimpleScalar):
==> content.author!''=='' [in template "game_pc/template/list_news.template.html" at line 59, column 49]
----
FTL stack trace ("~" means nesting-related):
- Failed at: ${(content.author!"" == "")?then("小A"... [in template "game_pc/template/list_news.template.html" at line 59, column 46]
- Reached through: @cms_content catalogid="${Catalog.cat... [in template "game_pc/template/list_news.template.html" at line 44, column 11]
----
Java stack trace (for programmers):
----
freemarker.core.NonBooleanException: [... Exception message was already printed; see it above ...]
at freemarker.core.Expression.modelToBoolean(Expression.java:195)
at freemarker.core.Expression.evalToBoolean(Expression.java:178)
at freemarker.core.Expression.evalToBoolean(Expression.java:163)
at freemarker.core.ParentheticalExpression.evalToBoolean(ParentheticalExpression.java:35)
at freemarker.core.BuiltInsWithLazyConditionals$then_BI._eval(BuiltInsWithLazyConditionals.java:40)
at freemarker.core.Expression.eval(Expression.java:101)
at freemarker.core.DollarVariable.calculateInterpolatedStringOrMarkup(DollarVariable.java:104)
at freemarker.core.DollarVariable.accept(DollarVariable.java:63)
at freemarker.core.Environment.visit(Environment.java:371)
at freemarker.core.IteratorBlock$IterationContext.executedNestedContentForCollOrSeqListing(IteratorBlock.java:321)
at freemarker.core.IteratorBlock$IterationContext.executeNestedContent(IteratorBlock.java:271)
at freemarker.core.IteratorBlock$IterationContext.accept(IteratorBlock.java:244)
at freemarker.core.Environment.visitIteratorBlock(Environment.java:645)
at freemarker.core.IteratorBlock.acceptWithResult(IteratorBlock.java:108)
at freemarker.core.IteratorBlock.accept(IteratorBlock.java:94)
at freemarker.core.Environment.visit(Environment.java:371)
at freemarker.core.Environment$NestedElementTemplateDirectiveBody.render(Environment.java:3423)
at com.chestnut.common.staticize.tag.AbstractTag.onTagEnd(AbstractTag.java:81)
at com.chestnut.common.staticize.tag.AbstractTag.execute(AbstractTag.java:50)
at freemarker.core.Environment.visit(Environment.java:452)
at freemarker.core.UnifiedCall.accept(UnifiedCall.java:102)
at freemarker.core.Environment.visit(Environment.java:335)
at freemarker.core.Environment.visit(Environment.java:341)
at freemarker.core.Environment.process(Environment.java:314)
at com.chestnut.common.staticize.StaticizeService.process(StaticizeService.java:78)
at com.chestnut.contentcore.service.impl.PublishServiceImpl.doCatalogStaticize(PublishServiceImpl.java:441)
at com.chestnut.contentcore.service.impl.PublishServiceImpl.catalogStaticize(PublishServiceImpl.java:367)
at com.chestnut.contentcore.service.impl.PublishServiceImpl.catalogStaticize(PublishServiceImpl.java:357)
at com.chestnut.contentcore.publish.CatalogPublishTask.publish(CatalogPublishTask.java:43)
at com.chestnut.contentcore.publish.PublishTaskReceiver.onMessage(PublishTaskReceiver.java:42)
at com.chestnut.contentcore.publish.PublishTaskReceiver.onMessage(PublishTaskReceiver.java:22)
at org.springframework.data.redis.stream.StreamPollTask.deserializeAndEmitRecords(StreamPollTask.java:157)
at org.springframework.data.redis.stream.StreamPollTask.doLoop(StreamPollTask.java:128)
at org.springframework.data.redis.stream.StreamPollTask.run(StreamPollTask.java:112)
at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136)
at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635)
at java.base/java.lang.Thread.run(Thread.java:833)