解决方案 »

  1.   

    test=后面是双引号,你传的那个参数可以写单引号。
      

  2.   

    :<s:if test="#session.user.username=='addd'">
    你一层层的打印出看是什么
      

  3.   

    我刚开始就是那样写的,后来查询网上说字符串变量必须是“”,就改过来了

    怎么可能,我下午在公司刚写过类似代码: <s:if test="#pd.getFillmoney().startsWith('-')">
           <td bgcolor="f5f1d9"> <div align="center"></div></td>
           <td bgcolor="f5f1d9"> <div align="center">${fillmoney}</div></td>
    </s:if>测试好好的。
    我估计是取Session里的对象是不是需要强转成对象类型才能调用那个对象方法。
      

  4.   

    我刚开始就是那样写的,后来查询网上说字符串变量必须是“”,就改过来了

    怎么可能,我下午在公司刚写过类似代码: <s:if test="#pd.getFillmoney().startsWith('-')">
           <td bgcolor="f5f1d9"> <div align="center"></div></td>
           <td bgcolor="f5f1d9"> <div align="center">${fillmoney}</div></td>
    </s:if>测试好好的。
    我估计是取Session里的对象是不是需要强转成对象类型才能调用那个对象方法。
    你那里面是一个char类型的,我传的参数是String类型的,必须要用双引号
      

  5.   

    问题,我已经找到了,是因为那个方法是private 的,我本以为user调用自身的方法,private也可以,可是实际上不是user本身调用的