SQL:
select name,password form table;action:
  
  put("user",user);jsp:<s:property value="#user[0]"/> //按道理说应该取的name的值 为什么为1呢???

解决方案 »

  1.   

    有get set 方法不就可以取了嘛 put干嘛
      

  2.   

    或者说,在action里put了以后 、
    不如put("user",user);用s:property 怎么取值???
      

  3.   

    试试看先计算能不能取出来。 <s:property value="%{#user[0]}" /> 我不是很熟悉~
      

  4.   

    <s:property value="errors"/>在JSP页面中显示Value Stack Contents(值栈,action的属性都放在这里)(直接访问)
    以及
    Stack Context(也叫Action Context,页面传过来的参数,request,session,application都在这里)的值," "中填写变量名(#加key访问)示例:
    from valuestack: <s:property value="t"/><br/>
    from actioncontext: <s:property value="#parameters.t"/>
    <s:debug></s:debug>
      

  5.   

    关于<s:property value="">取值问题,要看楼主在Action中使用的是模型驱动还是属性驱动若在action中直接定义了几个属性如:
    private String name;
    private String password;
    生成他们相应的set get方法,那么像这样的属性驱动,你直接在<s:property value="name">就可以取到值。若建一个User类封装了name ,和password,在action中引用了Private User user,生成相应的set get方法,那么<s:property value="user.name">就可以取到name的值了。关于<s:property value=""/>建议你再去学学OGNL表达式:给个例子;
    开始已在服务器端将list setAtributter("list",list)了。
    <s:iterator value="%{#request.list}" id="us">
    <tr>
    <td>
    <!-- <s:property value="%{#request.id}"/> -->
    ${requestScope.id}
    <br>
    </td>
    <td><s:property value="#us.username"/><br>
    </td>
    <td><s:property value="#us.password"/><br>
    </td>
    <td><s:property value="#us.age"/><br>
    </td>
    <td><s:a href="removeUser.action?user.id=%{#us.id}">删除</s:a>
    </td>
    <td><s:a href="updateP.action?user.id=%{#us.id}">更新</s:a>
    </td>
    </tr>
    </s:iterator>
      

  6.   


    这个我知道,你针对你说的那样子。
    list setAtributter("list",list);
    你首先是<s:iterator value="%{#request.list}" id="us"> 
    但是我现在不循环 ,我要直接取里面某个值 可以吗???
      

  7.   


    那你这样:用<s:property value="%{#request.list.username}">  取username的值。里面的%{}可以要也可以不要。
      

  8.   

    既然用的是strust2了 那就不要再用数组了,有list对象,或者利用map
    而且 s:property 的用法可能需要一点了解 认同7楼的
    给你个例子
    没有利用id属性的方法<s:bean name="包.包.类">
    <s:param name="girl" value="'美女'"/>
    <s:param name="boy" value="'帅锅'"/>

    只能在bean标签里边用
    <s:property value="girl"/>,<s:property value="boy"/>
    </s:bean>如果有了id属性这可以在外边用
    <s:bean name="包.包.类" id="例子">
    <s:param name="girl" value="'美女'"/>
    <s:param name="boy" value="'帅锅'"/>
    </s:bean>
    <s:property value="#例子.girl"/>,<s:property value="#例子.boy"/>所以可以看得出来 id则bean实例出来的对象名称
    你可以利用这种方式复制 在提取 如果想从action类里直接取值,那你说的方法还不如用EL表达式了.对吧?
      

  9.   

    是不是SessionAware接口,那么action中肯定有个private Map<String, Object> session,和get set;这时候用jsp:<s:property value="session.user[0]"/>