2017-10-16 220 views
0

我是servlets的新手,所以非常簡單的答案將不勝感激。我的問題是我寫了一個servlet從HTML表單中提取值的代碼。但是,當我運行我的HTML格式如Servlet沒有顯示任何輸出

http://localhost:8080/secondTry/form.html

HTML形式出現好。當我輸入名字和姓氏,然後按提交按鈕,它不顯示任何輸出..我不知道爲什麼..我在互聯網上搜索它,但都是徒勞的。另外,它與我的tomcat有什麼關係?

下面是我的文件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:/apache-tomcat-8.5.23/lib/servlet-api.jar secTry.java

請幫助我,告訴我哪裏做錯了嗎?

+0

什麼是您的servlet容器? –

+0

我正在使用tomcat 8.5.23 –

+0

1.不要在默認包中創建類。 2.'action =「/ formServlet」'應該是'action =「/ theContextPathOfYourApplication/formServlet」'3.尊重Java命名約定。 4.使用WebServlet註釋而不是xml:我們現在不再處於2005年。 –

回答

1

當我輸入名字和姓氏,然後按提交按鈕它不顯示任何輸出。

根據您提供的你是不是在提交表格的所有代碼:

<input type="button" value="submit"> 

這不是提交元素。表單將在元素類型爲submit時提交:

<input type="submit" value="submit"> 
+0

我早就知道了。謝謝。 :) –