【发布时间】:2015-04-13 10:15:00
【问题描述】:
我有一个 spring 项目,我的问题是当我在控制器中调试它时,我的模型对象在 jsp 上变为空,它显示数据,但在 jsp 上没有显示任何内容,并且日志中没有错误。
我最近添加了弹簧瓦片配置,瓦片工作正常,但这些对象在正常工作之前停止显示。
我对此进行了很多搜索,并在 stackoverflow 上检查了类似 Spring Model Object is not rendering 的相同链接,但没有任何效果。
这是我的控制器:
@RequestMapping(value = "/viewClient", method = RequestMethod.GET)
public String viewClient(ModelAndView model) {
ArrayList<SystemUser> systemUsers = clientController.getAllUsers();
model = new ModelAndView("systemUsers");
model.addObject("systemUsers", systemUsers);
return "viewClient";
}
spring-config.xml
<bean id="viewResolver" class="org.springframework.web.servlet.view.UrlBasedViewResolver">
<property name="viewClass" value="org.springframework.web.servlet.view.tiles2.TilesView" />
<property name="order">
<value>0</value>
</property>
</bean>
<bean class="org.springframework.web.servlet.view.tiles2.TilesConfigurer" id="tilesConfigurer">
<property name="definitions">
<list>
<value>/WEB-INF/tiles.xml</value>
</list>
</property>
</bean>
tiles.xml
<tiles-definitions>
<definition name="base.definition" template="/WEB-INF/pages/Theme/Template/mainTemplate.jsp">
<put-attribute name="title" value=""></put-attribute>
<put-attribute name="header" value="/WEB-INF/pages/Theme/Template/header.jsp"></put-attribute>
<put-attribute name="menu" value="/WEB-INF/pages/Theme/Template/menu.jsp"></put-attribute>
<put-attribute name="body" value=""></put-attribute>
<!-- <put-attribute name="footer" value="/WEB-INF/pages/Theme/Template/footer.jsp"></put-attribute> -->
</definition>
<definition name="base.definition.login" template="/WEB-INF/pages/Theme/Template/loginTemplate.jsp">
<put-attribute name="title" value=""></put-attribute>
<put-attribute name="body" value=""></put-attribute>
</definition>
<definition extends="base.definition" name="viewClient">
<put-attribute name="title" value="View Client"></put-attribute>
<put-attribute name="body" value="/WEB-INF/pages/Theme/Admin/viewClient.jsp"></put-attribute>
</definition>
<tiles-definitions>
viewClient.jsp:
<table class="table table-striped table-advance table-hover">
<h4>
<!-- <i class="fa fa-angle-right"></i> --> Client Details
</h4>
<thead>
<tr>
<th><i class="fa fa-bullhorn"></i> index --${systemUsers.size()}--size </th>
<th><i class="fa fa-bullhorn"></i> Username</th>
<th><i class="fa fa-bullhorn"></i> Password</th>
<th><i class="fa fa-bullhorn"></i> User role</th>
<th><i class="fa fa-bullhorn"></i> Mobile No</th>
<th><i class="fa fa-bullhorn"></i> Email ID</th>
<th><i class="fa fa-bullhorn"></i> SMSC</th>
<th><i class="fa fa-bullhorn"></i> Virtual Sim ID</th>
<th></th>
</tr>
</thead>
<tbody>
<c:set var="count" value="0" scope="page" />
<c:forEach var="user" items="${systemUsers}">
<tr>
<td>${count + 1}</td>
<td>${ user.getUsername()}</td>
<td>${ user.getPassword()}</td>
<td>${user.getUserrole()}</td>
<td>${user.getMobileNumber()}</td>
<td>${user.getPrimaryEmailAddress()}</td>
<td>${user.getSmsc()}</td>
<td>${user.getVirtualSimID()}</td>
<td>
<button class="btn btn-success btn-xs">
<i class="fa fa-check"></i>
</button>
<button class="btn btn-primary btn-xs">
<i class="fa fa-pencil"></i>
</button>
<button class="btn btn-danger btn-xs">
<i class="fa fa-trash-o "></i>
</button>
</td>
</tr>
<c:set var="count" value="${count + 1}" scope="page" />
</c:forEach>
</tbody>
</table>
In the jsp the systemUsers are not getting iterated nor displayed not its size is getting displayed..
【问题讨论】:
-
在视图客户端方法中尝试删除这一行 -->
model = new ModelAndView("systemUsers");
标签: java jsp spring-mvc tiles2