Ответ 1
form method =\ "post \" action =\ "+" /cs 532/servertime \"
Это должно быть полезным и идеальным решением.
Я только что начал работать с tomcat и сервлетом. после запуска некоторой html-страницы я пытался запустить это timeform.it, давая мне page.but, когда я нажимаю на страницу отправки, он дает мне эту ошибку вместо time.please, помогите мне.
import javax.servlet.*;
import javax.servlet.http.*;
import java.io.*;
import java.util.*;
import java.text.*;
public class TimeForm extends HttpServlet {
private static final String CONTENT_TYPE = "text/html";
private Locale[] allLocale = Locale.getAvailableLocales();
private String[] allTimeZone = TimeZone.getAvailableIDs();
/** Process the HTTP Get request */
public void doGet(HttpServletRequest request, HttpServletResponse
response) throws ServletException, IOException {
response.setContentType(CONTENT_TYPE);
PrintWriter out = response.getWriter();
out.println("<h3>Choose locale and time zone</h3>");
out.println("<form method=\"post\" action=" +
"/liangweb/TimeForm>");
out.println("Locale <select size=\"1\" name=\"locale\">");
// Fill in all locales
for (int i = 0; i < allLocale.length; i++) {
out.println("<option value=\"" + i +"\">" +
allLocale[i].getDisplayName() + "</option>");
}
out.println("</select>");
// Fill in all time zones
out.println("<p>Time Zone<select size=\"1\" name=\"timezone\">");
for (int i = 0; i < allTimeZone.length; i++) {
out.println("<option value=\"" + allTimeZone[i] +"\">" +
allTimeZone[i] + "</option>");
}
out.println("</select>");
out.println("<p><input type=\"submit\" value=\"Submit\" >");
out.println("<input type=\"reset\" value=\"Reset\"></p>");
out.println("</form>");
out.close(); // Close stream
}
/** Process the HTTP Post request */
public void doPost(HttpServletRequest request, HttpServletResponse
response) throws ServletException, IOException {
response.setContentType(CONTENT_TYPE);
PrintWriter out = response.getWriter();
out.println("<html>");
int localeIndex = Integer.parseInt(
request.getParameter("locale"));
String timeZoneID = request.getParameter("timezone");
out.println("<head><title>Current Time</title></head>");
out.println("<body>");
Calendar calendar =
new GregorianCalendar(allLocale[localeIndex]);
TimeZone timeZone = TimeZone.getTimeZone(timeZoneID);
DateFormat dateFormat = DateFormat.getDateTimeInstance(
DateFormat.FULL, DateFormat.FULL, allLocale[localeIndex]);
dateFormat.setTimeZone(timeZone);
out.println("Current time is " +
dateFormat.format(calendar.getTime()) + "</p>");
out.println("</body></html>");
out.close(); // Close stream
}
}
то я скомпилировал его без ошибок javac -cp .;d:\apache\lib\servlet-api.jar TimeForm.java
это мой файл web.xml.
<?xml version="1.0" encoding="ISO-8859-1"?>
<web-app version="3.0"
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 http://java.sun.com/xml/ns/javaee/web-app_3_0.xsd">
<servlet>
<servlet-name>servertime</servlet-name>
<servlet-class>TimeForm</servlet-class>
</servlet>
<servlet-mapping>
<servlet-name>servertime</servlet-name>
<url-pattern>/servertime</url-pattern>
</servlet-mapping>
</web-app>
после нажатия на submit -
введите отчет о состоянии
message/liangweb/TimeForm
описание Запрошенный ресурс недоступен.
form method =\ "post \" action =\ "+" /cs 532/servertime \"
Это должно быть полезным и идеальным решением.