JSP页面数据不能载入

发布于 2022-09-06 12:18:50 字数 3882 浏览 27 评论 0

ItemsController.java

@Controller
public class ItemsController {
    
    // 商品查询列表
    @RequestMapping("/queryItems")
    public ModelAndView queryItems() throws Exception {
        
        //调用service查找 数据库,查询商品列表,这里使用静态数据模拟
        List<Items> itemsList = new ArrayList<Items>();
        //向list中填充静态数据
        
        Items items_1 = new Items();
        items_1.setName("联想笔记本");
        items_1.setPrice(6000f);
        items_1.setDetail("ThinkPad T430 联想笔记本电脑!");
        
        Items items_2 = new Items();
        items_2.setName("苹果手机");
        items_2.setPrice(5000f);
        items_2.setDetail("iphone6苹果手机!");
        
        itemsList.add(items_1);
        itemsList.add(items_2);
        
        ModelAndView modelAndView = new ModelAndView();
        modelAndView.addObject("itemsList", itemsList);
        
        // 指定视图
        modelAndView.setViewName("/WEB-INF/jsp/items/itemsList.jsp");
        
        System.out.println(items_1.name);
        System.out.println(modelAndView);
        
        return modelAndView;
        
    }
    
}

itemsList.jsp

<c:forEach items="${itemsList}" var="item">
    <tr>
        <td>${item.name }</td>
        <td>${item.price }</td>
        <%-- <td><fmt:formatDate value="${item.createtime}" pattern="yyyy-MM-dd HH:mm:ss"/></td> --%>
        <td>${item.detail }</td>
        
        <td><a href="${pageContext.request.contextPath }/item/editItem.action?id=${item.id}">修改</a></td>
    
    </tr>
</c:forEach>

spring-servlet.xml

<context:component-scan base-package="cn.itcast.ssm.controller"></context:component-scan> 
<!--注解映射器 -->
<bean class="org.springframework.web.servlet.mvc.method.annotation.RequestMappingHandlerMapping"/>
<!--注解适配器 -->
<bean class="org.springframework.web.servlet.mvc.method.annotation.RequestMappingHandlerAdapter"/>

<!-- 使用 mvc:annotation-driven代替上边注解映射器和注解适配器配置
<!-- <mvc:annotation-driven></mvc:annotation-driven> -->

<!-- 视图解析器 -->
<bean
    class="org.springframework.web.servlet.view.InternalResourceViewResolver">
    <!-- 配置jsp路径的前缀 -->
    <!-- <property name="prefix" value="/WEB-INF/jsp"/> -->
    <!-- 配置jsp路径的后缀 -->
    <!-- <property name="suffix" value=".jsp"/> -->
</bean>

web.xml

<!DOCTYPE web-app PUBLIC
 "-//Sun Microsystems, Inc.//DTD Web Application 2.3//EN"
 "http://java.sun.com/dtd/web-app_2_3.dtd" >
<web-app>
  <display-name>Archetype Created Web Application</display-name>
  
  <!-- springmvc前端控制器 -->
  <servlet>
      <servlet-name>springmvc</servlet-name>
      <servlet-class>org.springframework.web.servlet.DispatcherServlet</servlet-class>
      <!-- contextConfigLocation配置springmvc加载的配置文件(配置处理器映射器,适配器)  -->
      <init-param>
          <param-name>contextConfigLocation</param-name>
          <param-value>classpath:springmvc.xml</param-value>
      </init-param>
  </servlet>
  
  <servlet-mapping>
      <servlet-name>springmvc</servlet-name>
      <url-pattern>*.action</url-pattern>
  </servlet-mapping>
</web-app>

clipboard.png
debug的时候数据是有的,modelAndView我也返回了,但是页面却显示

clipboard.png

不知道这是什么原因?

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(4

生来就爱笑 2022-09-13 12:18:50

这是el表达式无法解析的问题。
1.Application server in question doesn't support JSP 2.0. (应用服务器不支持JSP2.0)
2.The web.xml is not declared as Servlet 2.4 or higher. (web.xml中servlet版本没有声明在2.4以上)
3.The @page is configured with isELIgnored=true. (页面上配置了<%@ page isELIgnored="true" %> )
4.The web.xml is configured with <el-ignored>true</el-ignored> in <jsp-config>. (web.xml中显式地配置了忽略EL表达式)

最好是你 2022-09-13 12:18:50

web app 节点改成这样

<?xml version="1.0" encoding="UTF-8"?>

<web-app version="2.5"
xmlns="http://java.sun.com/xml/ns/javaee"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://java.sun.com/xml/ns/javaee
http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd">

</web-app>
病毒体 2022-09-13 12:18:50
<%@ taglib uri="http://java.sun.com/jsp/jstl/core" prefix="c" %>
<%@ taglib uri="http://java.sun.com/jsp/jstl/fmt" prefix="fmt" %>

注解驱动打开

  <!-- 扩充了注解驱动,可以将请求参数绑定到控制器参数 -->
   <mvc:annotation-driven />

<mvc:annotation-driven
/>提供了:数据绑定支持,@NumberFormatannotation支持,@DateTimeFormat支持,@Valid支持,读写XML的支持(JAXB,读写JSON的支持(Jackson)。我们处理响应ajax请求时,就使用到了对json的支持(配置之后,在加入了jackson的core和mapper包之后,不写配置文件也能自动转换成json)。

有异常日志吗?

请别遗忘我 2022-09-13 12:18:50

这问题好像是没有解析数据,后台无法传对象到前台

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文