首页
App
&
Coffee
文档
项目
分享
反馈
俱乐部
登录
注册
jfinal 在使用enjoy引擎模版时,返回jsp文件,页面使用el表达式无效
錢勢惘導
2018-10-22 10:19
@JFinal
如题,默认引擎模版是enjoy,在controller中返回jsp页面时,页面的el表达式无效
项目:
JFinal
评论区
JFinal
2018-10-22 10:25
使用 enjoy 引擎的模板,就只能使用 enjoy 的表达式,而不能使用 el 表达式
如果希望同时使用 JSP,使用下面的代码即可:
renderJsp("my.jsp");
也就是说 render(...) 使用的是 enjoy ,而 renderJsp(...) 使用的是 jsp
在 jfinal 项目中可以同时是无数种模板引擎共存,因为除了 render、renderJsp、renderVelocity、renderFreemarker 以外,还有 render(Render render) 这个方法可以支持任意 render 扩展
回复
錢勢惘導
2018-10-22 10:31
@JFinal
就是用的这个 renderJsp("my.jsp"); 返回的jsp页面,也就是说,在使用enjoy引擎模版时,返回的jsp页面中不能使用el表达式
回复
JFinal
2018-10-22 10:46
@錢勢惘導
用的 renderJsp("my.jsp") 没问题的,在 "my.jsp" 中尽管使用 el 表达式,这么用的话就与 enjoy 完全无关了
你说的 el 表达式无效,基本可以确定是别的错误,与 enjoy 没有关系
回复
錢勢惘導
2018-10-22 11:39
@JFinal
您好,我在configHandler中添加的全局的ContextPathHandler,在renderJsp("my.jsp") 中用el表达式获取不到值呀,我用的事jetty启动,这个和jetty有关吗?
回复
JFinal
2018-10-22 11:54
@錢勢惘導
这个与 jetty 无关,取值要弄对 contexPath 的名称,默认名是 "CONTEXT_PATH",用的时候这样:
${CONTEXT_PATH}
你也可以在配置的时候指定一个更简短的名字:
me.add(new ContextPathHandler("CXT"));
用的时候变这样:
${CXT}
回复
錢勢惘導
2018-10-22 15:52
@JFinal
解决了,参考的这个 https://blog.csdn.net/hanshileiai/article/details/46619777 page指令中少一个 isELIgnored="false" 属性
回复
JFinal
2018-10-22 15:54
@錢勢惘導
这个是纯粹的 JSP 的行为, jfinal 是完全不干预的
回复
JFinal
2018-10-22 15:55
@錢勢惘導
估计你的 web.xml 文件中头部的文档限制部分配置不对,也可能是 jsp 文件的头部要添加什么指令的引用
JSP 用起来很多冗余,所以 jfinal 才提供 enjoy 引擎来取代 JSP, enjoy 引擎比 JSP 好用得多
回复
錢勢惘導
2018-10-22 16:48
@JFinal
好的,谢谢您的耐心解答
回复
发送
我要反馈
热门反馈
扫码入社
如果希望同时使用 JSP,使用下面的代码即可:
renderJsp("my.jsp");
也就是说 render(...) 使用的是 enjoy ,而 renderJsp(...) 使用的是 jsp
在 jfinal 项目中可以同时是无数种模板引擎共存,因为除了 render、renderJsp、renderVelocity、renderFreemarker 以外,还有 render(Render render) 这个方法可以支持任意 render 扩展