#set语句的速度RHS为空。为什么?

时间:2014-01-27 01:51:41

标签: velocity

我正在使用eclipse(spring + mybatis + maven + velocity) mybatis mapper OK,Controller OK,view(tables.vm)OK 但是控制台日志是#set语句的RHS为空。

为什么#set语句的Velocity [debug] RHS为null。上下文将不会被修改。 /WEB-INF/views/velocity/tables.vm [line 6,column 1]

控制器代码

@RequestMapping("/join")
public ModelAndView main(){
    ModelAndView mav = new ModelAndView();
    mav.setViewName("velocity/tables");

    List list = userDaoImpl.getTables();
    System.out.println("list : " + list);
    mav.addObject("list",list);

    return mav;
}

userDaoImpl.getTables OK(获取列表)

tables.vm

<html>
<head>
<title>abc</title>
</head>

<body>

#set ($list = $parameter.list)
$list

<strong>body.<strong>
</body>
</html>

1 个答案:

答案 0 :(得分:2)

这是因为您尝试分配的值确实是null

如果您确实希望允许为变量分配null值并删除该日志消息,则应更改Velocity配置中的directive.set.null.allowed设置。但这并没有解决找不到列表的事实......

我不熟悉Spring的工作方式,但您确定列表应该存储在$parameter下吗?它不在$list下吗?尝试在模板中打印$list进行检查。