我有一个问题,如何在不使用<jsp:include page="/servletURL" />
的情况下从jsp(chart.jsp)调用servlet,因为我之前尝试过,我不知道这是不是正确的原因,但是当我使用它时它会崩溃以上代码。
我放入我的doGet()方法从DB检索信息并使用JSTL +选项填充我的dropdownlist(在chart.jsp中),然后重定向到我的页面(同一页面),我相信每次浏览器写一个新的使用c:forEach
标记的页面再次调用我的servlet并且有一个永无止境的循环(再次,这只是我的假设)
这是我的代码,使其更清晰:
我的servlet:
ArrayList<Machine> foundMachines = MachineDB.getAllMachines();
request.getSession().setAttribute("foundMachineList", foundMachines);
RequestDispatcher rd = request.getRequestDispatcher("charts/chart.jsp");
rd.forward(request, response);
我的jsp:
<jsp:include page="/searchServlet" />
<%@ taglib uri="http://java.sun.com/jsp/jstl/core" prefix="c" %>
<c:forEach var="machine" items="${sessionScope.foundMachineList}">
<option value="${machine.machineId}">${Machine.machineName}
</option>
</c:forEach>
所以我的问题是为什么我的<jsp:include page="/servletURL" />
代码会崩溃我的网页以及如何修复它。任何消化都是受欢迎的
答案 0 :(得分:0)
使用
response.sendRedirect("//your servlet name");
答案 1 :(得分:0)
最有可能与此无关,但改变
${Machine.machineName} to ${machine.machineName}