私はjstlを初めて使用し、データベースから取得したオブジェクトの反復リストからのELマークアップも含むjspでurl-stringパラメーターを取得するのに助けが必要です。以下のコードを修正して、次のコード行に実際の数値が入力されるようにする方法を誰かに教えてもらえますか?${param.spid}:
<a href="create-course-summary?spid="${param.spid}>add</a>
背景は次のとおりです。
次の URL パターンでサーブレットを呼び出しています。
view-course-summaries?spid=1
doGet
これにより、サーブレットで 次のメソッドが呼び出されます。
protected void doGet(HttpServletRequest req, HttpServletResponse resp)
throws ServletException, IOException {
String spidString = req.getParameter("spid");
Long spid = new Long(spidString);
List<CourseSummary> coursesummaries = new CourseSummaryDAO().findAllCS(spid);
req.setAttribute("coursesummaries", coursesummaries);
jsp.forward(req, resp);
}
次の jsp を返します。
<%@taglib uri="http://java.sun.com/jsp/jstl/core" prefix="c" %>
<%@ include file="admintop.inc" %>
<table>
<tr>
<td>Name of School (Course Provider):</td>
<td>will go here</td>
</tr>
<tr><td colspan=2>
<a href="create-course-summary?spid="${param.spid}>add</a>
</td>
</tr>
<tr>
<td colspan=2>
<table>
<tr>
<th>Type</th>
<th>Number</th>
<th>id</th>
</tr>
<c:forEach varStatus="loopCounter" items="${coursesummaries}" var="coursesummary">
<tr>
<td>
<c:out value="${coursesummary.coursetype}" />
</td>
<td>
<c:out value="${coursesummary.numunits}" />
</td>
<td>
<c:out value="${coursesummary.id}" />
</td>
</tr>
</c:forEach>
</table>
</td>
</tr>
</table>
<%@ include file="adminbottom.inc" %>