0

私は Java サーブレットに少し慣れていませんが、netbeans を使用しています。問題は、期待される出力が得られないことですColorServlet.java..

import javax.servlet.*;
import java.io.*;
public class ColorServlet extends GenericServlet
{

    @Override
    public void service(ServletRequest request,ServletResponse response) throws IOException,ServletException
    {
        PrintWriter out=response.getWriter();
        response.setContentType("text/html");
        String s=request.getParameter("s1");
        out.println("<Body bgcolor="+s+"></body>");
        out.close();
    }
}

そして、これはmyhtml.html私が持っているファイルです-->

<html>
    <head><title>This is a Color project</title></head>
    <body>
        <form action="ColorServlet">
            Select your favorite Color
            <select name="s1">
                <option value="Red">Red</option>
                <option>Green</option>
                <option>Yellow</option>
            </select>
            <br>
            <input type="submit" value ="OK"/>
        </form>
    </body>
</html>

そして、このプロジェクトを実行すると、次のようになります -->http://localhost:8080/ColorProject/ColorServlet ブラウザに完全に黒い画面しか表示されません..何が問題なのですか?

4

1 に答える 1

0

リクエストを取得してレスポンスを構築するには、HttpServlet が必要です。このようにサーブレットを変更します

import javax.servlet.*;
import java.io.*;
import javax.servlet.annotation.WebServlet;
import javax.servlet.http.HttpServlet;

@WebServlet(name = "ColorServlet", urlPatterns = {"/ColorServlet"})
public class ColorServlet extends HttpServlet
{

    @Override
    public void service(ServletRequest request,ServletResponse response) throws IOException,ServletException
    {
        PrintWriter out=response.getWriter();
        response.setContentType("text/html");
        String s=request.getParameter("s1");
        out.println("<Body bgcolor="+s+"></body>");
        out.close();
    }
}
于 2013-06-29T15:07:46.063 に答える