演習課題「間違い探し」
右の環境には、ServletとJSPで、1行掲示板が作成してありますが、「送信する」ボタンをクリックしても、名前欄が保存されません。正常に動作するよう、プログラムを修正してください。
採点して、すべてのジャッジに正解すれば、演習課題クリアです!
#11:具体例:1行掲示板を作ろう - 投稿内容を確認する
ここでは、先ほどに続いて、Javaを使ったWebアプリケーションの例として、簡単な1行掲示板を作成します。今回は、投稿した内容を確認する画面を作成してみましょう。
(tomcat/webapps/mybbs/ResultServlet.java)import java.io.*;
import java.util.*;
import javax.servlet.*;
import javax.servlet.http.*;
public class ResultServlet extends HttpServlet {
    public void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
        request.setCharacterEncoding("utf-8");
        String article = request.getParameter("article");
        String userName = request.getParameter("userName");
        File file = new File(getServletContext().getRealPath("articles.txt"));
        FileWriter filewriter = new FileWriter(file, true);
        filewriter.write(article + "," + userName + System.getProperty("line.separator"));
        filewriter.close();
        request.setAttribute("message", "投稿しました!");
        request.setAttribute("article", article);
        request.setAttribute("userName", userName);
        String view = "/WEB-INF/views/result.jsp";
        RequestDispatcher dispatcher = request.getRequestDispatcher(view);
        dispatcher.forward(request, response);
    }
}
(tomcat/webapps/mybbs/WEB-INF/views/result.jsp)<%@ page language="java" contentType="text/html; charset=UTF-8"
    pageEncoding="UTF-8"%>
<!DOCTYPE html>
<html>
    <head>
        <meta http-equiv="Content-Type" content="text/html" charset="UTF-8">
        <title>Java - paiza</title>
        <style>body {padding: 30px;}</style>
    </head>
    <body>
        <% String message = (String)request.getAttribute("message"); %>
        <h1><%= message %></h1>
        <% String article = (String)request.getAttribute("article"); %>
        <% String userName = (String)request.getAttribute("userName"); %>
        <p>投稿:<%= article %></p>
        <p>名前:<%= userName %></p>
        <p></p>
        <p><a href="show">戻る</a></p>
    </body>
</html>
$ javac -classpath "../../lib/servlet-api.jar" -d WEB-INF/classes ResultServlet.java
- Javaの道>Servlet・JSP
  https://www.javaroad.jp/servletjsp/index.html
- Servletアプリ開発:目次 - Web系開発メモ
  http://web-dev.hatenablog.com/entry/java/servlet/dev-restful-app/table-of-contents
- JSP(formデータ)とJava Servletプログラムの連携 - はしくれエンジニアもどきのメモ
  http://cartman0.hatenablog.com/entry/2015/12/08/181657