日期:2014-05-19  浏览次数:20741 次

Struts的action跳转取值问题~
XML code
    <action name="allroundInfoDeleteBy" class="allroundInfoAction"
            method="deleteAllroundInfo">
            <result name="success" type="redirectAction">
                <param name="actionName">allroundInfoAction/findByItem.action</param>
                <param name="id">${session.userId}</param>
                <param name="uname">${uname}</param>
            </result>
        </action>


这个uname 在删除的Action(deleteAllroundInfo中)中已经有了如下定义
 
Java code

private String uname;
    
    
    public String getUname() {
        return uname;
    }
    public void setUname(String uname) {
        this.uname = uname;
    }




页面:
HTML code

            <%
                                    String uname = new String(request.getParameter("uname").getBytes(
                                                                    "ISO8859-1"), "UTF-8");
                                %>
                                <input type="hidden" name="uname" value="<%=uname%>"/>



这个是有值的,我要做的是,其实从struts的配置文件也可以看出来,
就是执行删除action之后,再跳转执行

HTML code
allroundInfo/findByItem.action?id=${session.userId}&&uname=<s:property value="name"/>


现在的问题是,debug的时候,uname的值是空的呢 是没有值,输出的时候 也不是 null

奇怪的是,,在另外一个action里面(添加后返回带参数的查询)是可以的呢。

------解决方案--------------------
多了一个&
allroundInfo/findByItem.action?id=${session.userId}&&uname=<s:property value="name"/>


==>

allroundInfo/findByItem.action?id=${session.userId}&uname=<s:property value="name"/>



------解决方案--------------------
楼主:
你确定在HTML页面中那样能取到值???
问题应该就出在那里...