使用jstl在jsp中获取并设置值

时间:2013-09-01 03:33:37

标签: java jsp map

我有一个Map对象,这个Map对象有一些值,我在jsp页面上填充这些值,但问题是,当我将jsp页面发布到另一个控制器时,我希望在map对象中出现相同的值

Map(某些值)---> controller ---> jsp(Map +一些附加值)---- post ----->另一个控制器[想要Map +附加值]

MailContent.java

public class MailContent {
private String from;
private String to;
private String[] toMany;
private Map<String,byte[]> attachements;

//getter setter
}

some.jsp

<f:form action="../hr/sendNotification" commandName="mailHolder">
    <table>
        <tr>
            <td><label>From:</label></td>
            <td><input class="inputq" type="text" name="from" /></td>
        </tr>
        <tr>
            <td><label>To:</label></td>
            <td><input type="text" class="inputq" name="to" id="to"></input></td>
        </tr>
        <tr>    
            <td><label>Subject:</label></td>
            <td><input class="inputq" type="text" name="subject" /></td>
        </tr>

        <c:forEach var="attach" items="${mailHolder.attachements }" varStatus="i">
            <tr>
                <td><label>Attachement:${i.index+1 }</label></td>
                <td><input class="inputq" type="text" value="${attach.value }" name="attachements[${i.index }].value"/>
                <input class="inputq" type="text" value="${attach.key }" name="attachements[${i.index }].key"/>

            </tr>



        </c:forEach>
        <tr>
            <td><label>Message:</label></td>
            <td><textarea class="tarea" cols="60" rows="10" name="message"></textarea></td>
        </tr>
        <tr>
            <td></td>
            <td><input class="fancy" type="submit" value="Send" />
                &nbsp;&nbsp;&nbsp;&nbsp; <input class="fancy" type="reset"
                value="Reset" /></td>
        </tr>






    </table>

</f:form>

键值对在jsp上成功显示但是当我将其发布到另一个控制器并获取值时,关键部分将填充一些索引而不是值。

在控制台上:

之前:

MailContent [from=null, to=null, attachements={abc=[B@1d37913, xyz=[B@b20ff5}, subject=null, message=null]

Afetr帖子:

MailContent [from=from, to=to@gmail.com, attachements={0=[B@ebe064, 1=[B@1d90655}, subject=subject, message=message]

0 个答案:

没有答案