ssh框架...使用的struts2.. 在action中属性都有get set方法. 但是在jsp页面却无法取值和传值..?

action里的关键代码,get set不贴了..没位了
public class ActionUserInfo extends ActionSupport{
private IBiz_user_info userInfoBiz;
private UserInfo uInfo;
private List<UserInfo> uInfoList;
private String name;

public String queryAll(){
uInfoList=userInfoBiz.searchAll();
uInfo=uInfoList.get(0);
name=uInfo.getNvcrUserName();
return "success";
}
==============================
jsp页面
<s:if test="uInfoList==null">是</s:if>
<s:iterator value="uInfoList" id="list">
<tr>
<td>
${uInfo.numbId}
</td>
<td>
<s:property value="uInfo.nvcrUserName"/>
${list.nvcrUserName}
</td>
</tr>
</s:iterator>

Action类中属性实现getter/setter方法。比如
private String resultMsg;
public String getResultMsg() {
return resultMsg;
}
public void setResultMsg(String resultMsg) {
this.resultMsg = resultMsg;
}
jsp中
<%@ taglib prefix="s" uri="/struts-tags"%>
<s:property value="resultMsg" default="未接收到信息" />
就可以显示。
---------------------------------------------------------
如果还不可以,检查下Action类和struts2的配置文件
你的struts2用的是在Action类@注解 还是 struts.xml配置文件?
---------------------------------------------------------
最好把Action类和jsp的代码贴出来,如果有struts2.xml也贴出来追问

我写的和你一样的.就是不显示!
struts.xml里的是

/userAll.jsp
/index.jsp

贴到上面去了.

温馨提示:内容为网友见解,仅供参考
第1个回答  推荐于2017-09-15
1
private UserInfo uInfo; //不是list....
不用放在<s:iterator></s:iterator >里,直接${uInfo.numbId}就可以了
2
private List<UserInfo> uInfoList;//如果要显示这个list
<s:iterator value="#request.uInfoList" >
${numbld}
</s:iterator>
下面这样也行
<s:iterator value="uInfoList" >
${numbld}
</s:iterator>追问

还是不行~另外写了一个String name属性.可以在页面显示..
但是uInfo和uInfoList用s:if判断还是null的...
好像清空了一样~

参考资料:自己

本回答被提问者采纳
第2个回答  2012-02-16
很简单,你自己测试一下,首先在action里面打印一下值看看有没有,然后JSP页面就用${}EL表达式获取看看。追问

在action里面有值.!!在jsp页面用${}和struts2标签都得不到值..属性名字没错.

追答

贴下关键代码看看

追问

关键代码贴上面了.

第3个回答  2018-06-11
需要带#
<s:property value="#uInfo.nvcrUserName"/>
相似回答