You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

遵循Spring MVC教程操作后模板字面量无法正常显示如何排查?

Spring MVC EL表达式未解析问题排查方案
  • web.xml版本过低导致EL默认禁用
    2.3及以下版本的Servlet规范默认关闭EL表达式解析,首先检查web.xml头部声明,建议升级到2.4及以上版本;也可以在helloworld.jsp顶部添加配置手动开启EL:
    <%@ page isELIgnored="false" %>
    
  • 访问路径错误,未走Spring MVC流程
    不要直接在地址栏访问jsp文件的静态路径(如/项目名/helloworld.jsp),这种方式不会经过DispatcherServlet,Controller的handler方法不会执行,Model里的参数不会注入到请求域。请访问Controller映射的路径:/项目名/helloworld。
  • 视图解析器配置错误
    检查Spring MVC配置文件中的InternalResourceViewResolver配置,确认前缀(prefix)正确指向jsp文件存放的目录(通常为/WEB-INF/views/),后缀(suffix)配置为.jsp,保证Controller返回的视图名helloworld能正确匹配到对应的jsp文件。
  • 组件扫描未覆盖Controller包
    检查Spring MVC配置文件的<context:component-scan>配置,确认扫描的包路径包含net.te549.springmvc.controller,否则Controller不会被Spring容器加载,请求无法被正确处理。
  • JSTL依赖缺失
    高版本Tomcat等Servlet容器不会自带JSTL实现,需要手动引入依赖。如果是Maven项目,在pom.xml中添加以下依赖:
    <dependency>
        <groupId>javax.servlet</groupId>
        <artifactId>jstl</artifactId>
        <version>1.2</version>
    </dependency>
    
  • 问题定位调试方法
    在helloworld.jsp中添加调试代码<%= request.getAttribute("helloWorld") %>:
    • 如果输出为null:说明helloWorld对象未注入请求域,问题出在Controller加载、请求流程配置环节
    • 如果能输出对象地址:说明EL解析被禁用,优先排查web.xml版本和EL开关配置

内容的提问来源于stack exchange,提问作者A_Name

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.10.01 05:06:05