我有一个包含一些数据的json文件:
poll.json
{
"poll": {
"title": "About your preferences",
"questions": [
"Which color do you like best?",
"What is your lucky number?",
"Why?"
]
}
}
在我的servlet中,我读取了json文件并处理数据并将json表中的“title”项存储到titleString中。之后(麻烦开始的地方)我用“titleString”替换我的jsp文件中的“oldTitle”。
PollServlet.java
protected void doGet(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException {
processRequest(request, response);
response.setContentType("text/json");
/* create bufferedReader to read the file.json */
BufferedReader br = new BufferedReader( new InputStreamReader(
getClass().getResourceAsStream("poll/poll.json")));
JsonReader reader = Json.createReader(br);
br.close();
/* create json object and store it into titleString */
JsonObject jsonObject = reader.readObject();
String titleString = jsonObject
.getJsonArray("poll").getJsonObject(0).toString();
/* replace the item with atribute "oldTitle" to titleString*/
request.setAttribute("oldTitle",titleString);
getServletConfig().getServletContext().getRequestDispatcher(
"/poll.jsp").forward(request, response);
}
这是poll.jsp文件,我在其中设置了属性
<title>JSP Page</title>
</head>
<body>
<form>
<a><% out.print(request.getAttribute("oldTitle"));%></a><br>
<input type="text" name="firstname" value="">
<br>
What is your lucky number? <br>
<input type="text" name="lastname" value="">
<br>
Why? <br>
<input type="text" name="lastname" value="">
<br><br>
<input type="submit" value="Done">
</form>
</body>
</html>
问题是,当我运行我的项目时,我得到的是“null”而不是标签内的titleString导致问题的原因是什么?感谢