我试图从一个由servlet设置和调度的jsp页面访问会话属性,但是我收到错误消息"jsp:attribute必须是标准或自定义操作的子元素".可能有什么问题,我是否错误地访问了它?以下是代码段.
Servlet的:
protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
HttpSession session = request.getSession();
session.setAttribute("Questions", getQuestion());
System.out.println(session.getAttribute("Questions"));
RequestDispatcher req = request.getRequestDispatcher("DisplayQuestions.jsp");
req.forward(request, response);
}
private QuestionBookDAO getQuestion(){
QuestionBookDAO q = new QuestionBookDAO();
q.setQuestion("First Question");
q.setQuestionPaperID(100210);
q.setSubTopic("Java");
q.setTopic("Threads");
return q;
}
Run Code Online (Sandbox Code Playgroud)
我能够成功设置会话属性.但是当我尝试在我的jsp文件(下面)中访问它时,我收到运行时错误
<jsp:useBean id="Questions" type="com.cet.evaluation.QuestionBook" scope="session">
<jsp:getProperty property="Questions" name="questionPaperID"/>
<jsp:getProperty property="Questions" name="question"/>
</jsp:useBean>
Run Code Online (Sandbox Code Playgroud)
bean QuestionBook包含两个私有变量questionPaperID和问题 我在Tomcat上运行应用程序,下面是抛出的错误.
type Exception report
message
description The server encountered an internal error () that prevented it from fulfilling this request.
exception …Run Code Online (Sandbox Code Playgroud) 我试图只迭代我的Map中的第一个"n"值,是否有任何方法可用或我只需要使用count变量控制它.
下面是一个例子,我已经排序了一组属于同一个城市的名字.现在我只想要前10个城市和人名.
for (Map.Entry<String, List<String>> entry : map.entrySet()) {
List<String> list = entry.getValue();
// Display list of people in City
}
Run Code Online (Sandbox Code Playgroud)
是否有可以保存固定数量的键值对的Map实现?请指点一下.
谢谢,
-Vijay Selvaraj