从Spring 3.0.6迁移到3.2.3时,类型[java.lang.String]对选项不起作用

时间:2014-09-10 18:24:32

标签: spring jstl

我正在努力将动态Web项目从Spring 3.0.6迁移到3.2.3。在此迁移之前,我们的下拉菜单没有问题。但是,迁移后,我们收到以下错误:

Exception created : com.ibm.websphere.servlet.error.ServletErrorReport: javax.servlet.jsp.JspException: Type [java.lang.String] is not valid for option items

我已删除所有代码以隔离问题,因此以下是相关代码。如果需要任何进一步的信息,请告诉我。令我困惑的是,List甚至不是基于String的。我意识到JSP会将值视为String的选项,但我的理解是有一个内置的PropertyEditor可以执行此转换。

控制器:

@RequestMapping("/reports-menu.html")
public String showReportsHome(@ModelAttribute("reportForm")ReportForm reportForm, Model model, HttpSession session, HttpServletResponse response, HttpServletRequest request) {

    List<Integer> intList = new ArrayList<Integer>();
    intList.add(1);
    intList.add(2);
    intList.add(3);

    model.addAttribute("intList", intList);


    return "reports-home-int";
}

JSP:

<%@ taglib uri="/WEB-INF/tld/c.tld" prefix="c" %>
<%@ taglib uri="/WEB-INF/tld/fmt.tld" prefix="fmt" %>
<%@ taglib uri="http://www.springframework.org/tags/form" prefix="form"%>
<%@ taglib uri="http://www.springframework.org/tags" prefix="spring" %>
<%@ taglib uri="/WEB-INF/tld/sbp.tld" prefix="sbp" %>

<form:form name="report_form" method="POST" modelAttribute="reportForm" action="reports-menu.html" id="report_form">
<form:hidden path="download" id="form_download"/>
<form:hidden path="sortDirection" />
<form:hidden path="sortBy"/>
<input type="hidden" name="reset"/>
<div align="left">
<table border="0">
<tr>
<td><b>Mailer Name</b></td>
<td>
<form:select path="mailerCond">
<form:options items="${intList}" />
</form:select>
</td>               
</tr>
</table>
</div>
</form:form>

0 个答案:

没有答案