【发布时间】:2016-03-28 13:39:36
【问题描述】:
在jsp页面上传播我的jstl标签<forEach>的一段代码:
<select>
<c:if test="${!empty codeofcountries}">
<c:forEach var="codecoun" items="${codeofcountries}">
<option value="${codecoun.kods}">${codecoun}</option>
</c:forEach>
</c:if>
</select>
我的控制器:
public void doView(RenderRequest request, RenderResponse response) throws PortletException, IOException {
response.setContentType(request.getResponseContentType());
PPUZ_NDI_MNS_ENEEPortletSessionBean sessionBean = getSessionBean(request);
if( sessionBean==null ) {
response.getWriter().println("<b>NO PORTLET SESSION YET</b>");
return;
}
sessionBean.setDefaultInfoText();
String jsp = Start_JSP;
switch (sessionBean.getMode()) {
case Start:
jsp = Start_JSP;
break;
case Main:
jsp = Main_JSP;
break;
case Creat:
case Edit:
case Copy:
jsp = CreatEdit_JSP;
}
request.setAttribute("codeofcountries", sessionBean.getKodNameList());
PortletRequestDispatcher rd = getPortletContext().getRequestDispatcher(getJspFilePath(request, jsp));
rd.include(request, response);
当我去所有处理好的portlet时,列表是从数组中生成的,并根据我的需要显示在标签<select>中。但是当我在门户网站上重新运行会话时,标签(选择)的值在 jsp 页面上重复。不要将之前的值留在标记(选择)中并再次添加到相同的列表中。
【问题讨论】:
-
我知道 if 会怎样? -
迭代器条件
-
sessionBean.getKodNameList()的代码是什么? -
我通过SQL查询有两个变量,我在KodNameList中形成它们并通过键{codeofcountries}将它们传输到JSP中的标签