これが問題です。jspを使用して、Webサイトのメインページにメッセージのリストを表示しようとしています。しかし、Tomcatサーバーが起動すると、「for (Message message : messageList)」という行を指すこのエラー「HTTP Status 500 - java.lang.NullPointerException」のみを監視しています。
サーブレットのコードは次のとおりです。
public class MainPageServlet extends HttpServlet {
@Override
protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
MessageManager manager = new MessageManager();
List<Message> messageList = manager.getMessages();
request.setAttribute("messages", messageList);
request.getRequestDispatcher("/main-page.jsp").include(request, response); } }
そして、これが jsp の一部です。
<%
List<Message> messageList = (List<Message>) request.getAttribute("messages");
for (Message message : messageList) {
%>
<div class="row" style="margin-top: 15px">
<div class="col-md-4 col-md-offset-4">
<div class="panel panel-primary">
<div class="panel-heading">
<h3 class="panel-title">
<%= message.getLogin()%>
</h3>
</div>
<div class="panel-body">
<%= message.getMessage() %>
</div>
<div class="panel-footer">
Posted at: <%= message.getDate() %>
</div>
</div>
</div>
</div>
<%
}
%>
messageList を取得した結果をテストしましたが、100% OK です。では、バグはどこにあるのでしょうか? 助けてくれてありがとう!