私はサーブレットを初めて使っていますので、非常に簡単な答えが大いに評価されます。私の問題は、HTMLフォームから値を抽出するサーブレットのコードを書いたことです。私は私のHTMLフォームを実行したときしかし サーブレットは出力を表示していません
http://localhost:8080/secondTry/form.html
ようなHTMLフォームが表示されます大丈夫。私はfirstnameとlastnameを入力し、送信ボタンを押しても何の出力も表示されません。私は理由はわかりません。私はインターネットで検索しましたが、無駄なものです。 さらに、それは私の風袋と関係がありますか?以下は は、私のファイルform.htmlです:<html> <body> <form action="/formServlet" method="get"> First name: <input type="text" name="fname"><br> Last name: <input type="text" name="lname"><br> <input type="button" value="submit"> </form> </body> </html>
secTry.java:
import java.io.*; import javax.servlet.*; import javax.servlet.http.*; public class secTry extends HttpServlet{ public void doGet(HttpServletRequest req, HttpServletResponse res) throws IOException,ServletException{ String fname = req.getParameter("fname"); String lname = req.getParameter("lname"); PrintWriter out = res.getWriter(); out.println("Hello "+ fname + " " +lname + "...!!!"); } }
web.xmlファイル:
<web-app> <servlet> <servlet-name>secTry</servlet-name> <servlet-class>secTry</servlet-class> </servlet> <servlet-mapping> <servlet-name>secTry</servlet-name> <url-pattern>/formServlet</url-pattern> </servlet-mapping> </web-app>
PS:私は私のjavaをコンパイルしていますファイルをコマンドラインで使用する場合
のjavac -cp; C:secTry.java
/apache-tomcat-8.5.23/lib/servlet-api.jar私を助け、私が間違っているの場所を教えてください?
サーブレットコンテナとは何ですか? –
私はtomcat 8.5.23を使用しています –
1.デフォルトのパッケージにクラスを作成しないでください。 2. 'action ="/formServlet "は' action = "/ theContextPathOfYourApplication/formServlet"でなければなりません。 "3. Java命名規約を尊重してください。 4. xmlではなくWebServlet注釈を使用します。これはもう2005年ではありません。 –