Aplikacja webowa - plik nie jest wyswietlany, tylko sciagany

0

Hejka wszystkim,

mam następujący problem.
Uczę się właśnie o JSP i tym podobnych - w tym celu dorwałem książkę z cyklu HEAD FIRST. W rozdziale 3 jest omówienie MVC i jakiś przykład na zasadzie wyboru piwa na formularzu i wyświetlanie potwierdzenia. W przeciwieństwie do książki to ja kod pisze w Eclipsie i korzystam z serwera Glassfish, więc z częścią rzeczy walcze sam...
I tu moje pytanie: przepisałem kod z książki, uruchamiam aplikacje na serwerze. Strona z formularzem zostaje załadowana, teoretycznie po kliknięciu "submit" ma nastąpić przekierowanie na stronę, która wyświetla wybrany parametr. Przekierowanie jednak nie następuje, a strona zamiast się wyświetlić jest pobierana. Po otwarciu jej w notatniku mam to co teoretycznie powinno być wyświetlone jako strona internetowa. Kiedy wpisuje adres nowej strony "z ręki" dostaje HTTP404...
Macie jakiś pomysł? Poniżej załączam kod i dalsze wyjaśnienia.

Poniższy kod javy znajduje sie w folderze src/main/java w pakiecie web


package web;

import java.io.IOException;
import java.io.PrintWriter;

import javax.servlet.*;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;





	public class WyborPiwa extends HttpServlet {
		public void doPost (HttpServletRequest request,
							HttpServletResponse response)
							throws IOException, ServletException {
			response.setContentType ("test/html");
			PrintWriter out = response.getWriter();
			out.println("Porada piwna<br>");
			String c = request.getParameter("kolor");
			out.println("<br>Wybrany kolor piwa:" +c);
		}
	}


Tutaj mam plik web.xml z deskryptorem/mapowaniem


<?xml version="1.0" encoding="ISO-8859-1"?>
<web-app xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://java.sun.com/xml/ns/j2ee" xmlns:web="http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd" xsi:schemaLocation="http://java.sun.com/xml/ns/javaee http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd" version="2.5">
  <servlet>
    <servlet-name>R3 Piwo</servlet-name>
    <servlet-class>web.WyborPiwa</servlet-class>
  </servlet>
  <servlet-mapping>
    <servlet-name>R3 Piwo</servlet-name>
    <url-pattern>/WybierzPiwo.do</url-pattern>
  </servlet-mapping>
</web-app>

A na koniec plik HTML z formularza od którego zaczynam.


<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<body>
<h1 align="center">Strona wyboru piwa</h1>
<form method="post" action="WybierzPiwo.do">Wybierz wlasciwosci piwa
<p>Kolor:
<select name="kolor" size="1">
<option>jasny
<option>ciemny
<option>brazowy
<option>ciemny
</select>
<br><br>
<center>
<input type="submit">
</center>
</form>
</body>
</html>

Projekt nazwałem sobie jak w książce Piwo-w1.
Strukturę web widzę tak:
formularz:
http://localhost:8080/Piwo-w1/form.html
po potwierdzeniu przechodzę na:
http://localhost:8080/Piwo-w1/WybierzPiwo.do

No ale jak już mówiłem w moim przypadku nie przechodzę, a zostaje na stronie form.html a plik .do jest pobierany...

0

Taka pierwsza rzecz co się rzuca w oczy, to masz źle:
response.setContentType ("test/html");
Powinno być:
response.setContentType ("text/html");

1 użytkowników online, w tym zalogowanych: 0, gości: 1