在struts2中用标签并给其value赋值
程序员文章站
2022-05-28 16:51:59
...
在struts2中使用标签的value属性赋值失败:
<s:textfield name="user.userName" cssClass="form-control" value="<%=user.getUserName()%>"/>
这种方法是不可能成功的,甚至报错:
According to TLD or attribute directive in tag file, attribute value does not accept any expressions
解决方法和这篇博客讲的是同一个内容:https://blog.csdn.net/cnds123321/article/details/103454996
struts2不支持这种表达式,也不支持EL表达式。
故解决方法如下:
<s:textfield name="user.userName" cssClass="form-control" value="%{#session.User.userName}"/>
其中session是内置session对象。
User是保存的User对象。
User user = userService.selectByUserId(userId);
Map<String, Object> session = ActionContext.getContext().getSession();
session.put("User", user);