我剛開始使用servlet,我是新手。 我已經開發了一個帶有下拉菜單的HTML頁面,用戶可以從中選擇啤酒的顏色,並有一個提交按鈕來調用servlet.Here是它的html代碼。未在瀏覽器中加載Servlet
<html>
<head>
<title>Beer Selection</title>
</head>
<body>
<h2>Beer Selection Page</h2>
<p>Select beer charecteristics:</p>
<hr>
<form method="POST" action="SelectBeer.do">
<b>Color :</b><!--Keeping it outside the form unnecessarily creates a line break between color and Drop-down menu-->
<select name="color">
<option>Light</option>
<option>Brown</option>
<option>Amber</option>
<option>Dark</option>
</select><br>
<input type="SUBMIT" value="SUBMIT">
</form>
</body>
</html>
我創建了以下部署描述符
<?xml version="1.0" encoding="UTF-8"?>
<web-app xmlns="http://java.sun.com/xml/ns/javaee"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd"
version="2.5">
<servlet>
<servlet-name>MyBeer</servlet-name>
<servlet-class>com.example.web.BeerSelect</servlet-class>
</servlet>
<servlet-mapping>
<servlet-name>MyBeer</servlet-name>
<url-pattern>/SelectBeer.do</url-pattern>
</servlet-mapping>
</web-app>
我還成功地編譯BeerSelect.java servlet,它的代碼如下
package com.example.web;
import javax.servlet.*;
import javax.servlet.http.*;
import java.io.*;
public class BeerSelect extends HttpServlet
{
public void doPost(HttpServletRequest request,HttpServletResponse response)throws IOException,ServletException
{
response.setContentType("text/html");
PrintWriter out=response.getWriter();
out.println("Beer Selection Advice<br>");
String c=request.getParameter("color");
out.println("<br>Got Beer color"+c);
}
}
我使用Tomcat 7.0.21給出我創建瞭如下目錄: tomcat/webapps/learning/Beer-v1/form.html和
tomcat/weba pps/learning/Beer-v1/WEB-INF/web.xml和
tomcat/webapps/learning/Beer-v1/WEB-INF/classes/com/example/web/BeerSelect.class
(學習只是一個文件夾中我保留所有我的小servlet和jsp項目在webapps 內部學習我有我的不同的項目,如Beer-v1,DateDisplay,HotelMgmt等)
現在,當我運行form.html裏面的tomcat它是正確顯示,但當我點擊提交它顯示
HTTP Status 404 - /learning/Beer-v1/SelectBeer.do
type Status report
message /learning/Beer-v1/SelectBeer.do
description The requested resource (/learning/Beer-v1/SelectBeer.do) is not available.
Apache Tomcat/7.0.21
我做錯了什麼。請幫助。
我似乎無法看到任何錯誤。你有沒有嘗試重新啓動你的服務器?編輯配置文件並創建新類時,您需要重新啓動服務器。 –
我已經重啓了將近6-7次,但仍然收到相同的錯誤信息 –