無線&移動互聯網技術研發

          換位思考·····
          posts - 19, comments - 53, trackbacks - 0, articles - 283
            BlogJava :: 首頁 :: 新隨筆 :: 聯系 :: 聚合  :: 管理

          FreeMarker 中最常見的 undefined

          Posted on 2009-07-09 09:50 Gavin.lee 閱讀(3297) 評論(1)  編輯  收藏 所屬分類: FreeMarker

          500 Servlet Exception

          freemarker.core.InvalidReferenceException: Expression s.expect is undefined
          on line 7, column 11 in news/prize/open/ssc.ftl.
          	at freemarker.core.TemplateObject.assertNonNull(TemplateObject.java:124)
          	at freemarker.core.Expression.getStringValue(Expression.java:118)
          	at freemarker.core.Expression.getStringValue(Expression.java:93)
          	at freemarker.core.DollarVariable.accept(DollarVariable.java:76)
          	at freemarker.core.Environment.visit(Environment.java:209)
          	at freemarker.core.MixedContent.accept(MixedContent.java:92)
          	at freemarker.core.Environment.visit(Environment.java:209)
          	at freemarker.core.IteratorBlock$Context.runLoop(IteratorBlock.java:179)
          	at freemarker.core.Environment.visit(Environment.java:416)
          	at freemarker.core.IteratorBlock.accept(IteratorBlock.java:102)
          	at freemarker.core.Environment.visit(Environment.java:209)
          	at freemarker.core.MixedContent.accept(MixedContent.java:92)
          	at freemarker.core.Environment.visit(Environment.java:209)
          	at freemarker.core.Environment.visit(Environment.java:394)
          	at freemarker.core.BodyInstruction.accept(BodyInstruction.java:93)
          	at freemarker.core.Environment.visit(Environment.java:209)
          	at freemarker.core.MixedContent.accept(MixedContent.java:92)
          	at freemarker.core.Environment.visit(Environment.java:209)
          	at freemarker.core.Environment.visit(Environment.java:298)
          	at freemarker.core.CompressedBlock.accept(CompressedBlock.java:73)
          	at freemarker.core.Environment.visit(Environment.java:209)
          	at freemarker.core.MixedContent.accept(MixedContent.java:92)
          	at freemarker.core.Environment.visit(Environment.java:209)
          	at freemarker.core.EscapeBlock.accept(EscapeBlock.java:84)
          	at freemarker.core.Environment.visit(Environment.java:209)
          	at freemarker.core.Macro$Context.runMacro(Macro.java:168)
          	at freemarker.core.Environment.visit(Environment.java:602)
          	at freemarker.core.UnifiedCall.accept(UnifiedCall.java:106)
          	at freemarker.core.Environment.visit(Environment.java:209)
          	at freemarker.core.MixedContent.accept(MixedContent.java:92)
          	at freemarker.core.Environment.visit(Environment.java:209)
          	at freemarker.core.Environment.process(Environment.java:189)
          	at freemarker.template.Template.process(Template.java:237)
          	at yixun.wap.freemarker.FreemarkerDo.doMark(FreemarkerDo.java:47)
          	at _jsp._page._news._prize._open._ssc__jsp._jspService(page/news/prize/open/ssc.jsp:41)
          	at com.caucho.jsp.JavaPage.service(JavaPage.java:61)
          	at com.caucho.jsp.Page.pageservice(Page.java:586)
          	at com.caucho.server.dispatch.PageFilterChain.doFilter(PageFilterChain.java:190)
          	at yixun.wap.filter.ReplaceTextFilter.doFilter(ReplaceTextFilter.java:77)
          	at com.caucho.server.dispatch.FilterFilterChain.doFilter(FilterFilterChain.java:73)
          	at com.caucho.server.webapp.WebAppFilterChain.doFilter(WebAppFilterChain.java:167)
          	at com.caucho.server.dispatch.ServletInvocation.service(ServletInvocation.java:226)
          	at com.caucho.server.http.HttpRequest.handleRequest(HttpRequest.java:263)
          	at com.caucho.server.port.TcpConnection.run(TcpConnection.java:477)
          	at com.caucho.util.ThreadPool$Item.runTasks(ThreadPool.java:591)
          	at com.caucho.util.ThreadPool$Item.run(ThreadPool.java:513)
          	at java.lang.Thread.run(Thread.java:619)


          注:
          由于freemarker強烈不支持null,所以這個問題呢,多半就是JSP(或拋數據源的地方)數據沒有正確的傳過來。究其原因,不在ftl模板。 MyEclipse控制臺輸出:一看知道哪個頁面,哪行錯了,so easy…… O(∩_∩)O~
          [09:44:50.546] Compiling _jsp/_page/_news/_prize/_open/_ssc__jsp.java
          [ERROR]
          Expression s.expect is undefined on line 7, column 11 in news/prize/open/ssc.ftl.
          The problematic instruction:
          ----------
          ==> ${s.expect} [on line 7, column 9 in news/prize/open/ssc.ftl]
          ?in user-directive f.page [on line 3, column 1 in news/prize/open/ssc.ftl]
          ----------
          Java backtrace for programmers:
          ----------
          freemarker.core.InvalidReferenceException: Expression s.expect is undefined on line 7, column 11 in news/prize/open/ssc.ftl.
          ?at freemarker.core.TemplateObject.assertNonNull(TemplateObject.java:124)
          ?at freemarker.core.Expression.getStringValue(Expression.java:118)
          ……
          ……

          評論

          # re: FreeMarker 中最常見的 undefined  回復  更多評論   

          2012-03-26 12:49 by freemarker_tmp
          freemarker報的這個錯誤真的好惡心....查了半天才查出來...或許對freemarker不熟悉吧.
          主站蜘蛛池模板: 平度市| 新乐市| 奎屯市| 安丘市| 安达市| 文安县| 乌海市| 芦山县| 凤台县| 宜城市| SHOW| 克什克腾旗| 同心县| 铅山县| 柳州市| 黄陵县| 个旧市| 莎车县| 黄龙县| 宜川县| 大姚县| 洱源县| 淅川县| 修武县| 霞浦县| 黄骅市| 宕昌县| 咸阳市| 抚州市| 奇台县| 东兰县| 和龙市| 策勒县| 佛冈县| 新闻| 兰考县| 宜良县| 宽甸| 包头市| 涪陵区| 韶关市|