Duvida Exercicio 5.9 FJ-21

Ola pessoal, eu estou estudando a apostila FJ-21 da Caelum, e estou com 1 problema no exercicio 5.9, copiei e colei os codigos da apostila para nao correr o risco de estar digitando algo errado, gostaria de saber se vcs poderiam me ajudar com o problema: quando eu clico no botao de submit do form ele da o erro 404

desde ja agradeço a todos.

seguem os codigos do servlet, do html e do web.xml
caso precisem de mais alguma parte do codigo falem que eu posto aqui

servlet:


package br.com.caelum.servlet;

import java.io.IOException;
import java.io.PrintWriter;
import java.sql.Date;
import java.text.ParseException;
import java.text.SimpleDateFormat;
import java.util.Calendar;

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

import br.com.caelum.jdbc.dao.ContatoDAO;
import br.com.caelum.jdbc.modelo.Contato;



public class AdicionaContatoServlet extends HttpServlet {
	protected void service(HttpServletRequest request, HttpServletResponse response)
	throws IOException, ServletException {
	PrintWriter out = response.getWriter();
	// pegndo os parâmetros do request
	String nome = request.getParameter("nome");
	String endereco = request.getParameter("endereco");
	String email = request.getParameter("email");
	String dataEmTexto = request.getParameter("dataNascimento");
	Calendar dataNascimento = null;
	// fazendo a conversão da data
	try {
	Date date = (Date) new SimpleDateFormat("dd/MM/yyyy").parse(dataEmTexto);
	dataNascimento = Calendar.getInstance();
	dataNascimento.setTime(date);
	} catch (ParseException e) {
	out.println("Erro de conversão da data");	
	return; //para a execução do método
	}
	// monta um objeto contato
	Contato contato = new Contato();
	contato.setNome(nome);
	contato.setEndereco(endereco);
	contato.setEmail(email);
	contato.setDataNascimento(dataNascimento);
	// salva o contato
	ContatoDAO dao = new ContatoDAO();
	dao.adiciona(contato);
	// imprime o nome do contato que foi adicionado
	out.println("<html>");
	out.println("<body>");
	out.println("Contato " + contato.getNome() + " adicionado com sucesso");
	out.println("</body>");
	out.println("</html>");
	}
}

web.xml:


  <servlet>
  	<servlet-name>AdicionaContato</servlet-name>
  	<servlet-class>>br.com.caelum.servlet.AdicionaContatoServlet</servlet-class>
  </servlet>
  <servlet-mapping>
  	<servlet-name>AdicionaContato</servlet-name>
  	<url-pattern>/adicionaContato</url-pattern>
  </servlet-mapping>
</web-app>

e por fim o html

<html>
<body>
   <form action="adicionaContato">
      Nome: <input type="text" name="nome" /><br />
      E-mail: <input type="text" name="email" /><br /> 
      Endereço: <input type="text" name="endereco" /><br />
      Data Nascimento: <input type="text" name="dataNascimento" /><br />
      <input type="submit" value="Gravar" />
   </form>
</body>
</html>

Fale SergioVilelaJr.

No teu web.xml, tem dois sinais > natag de abertura servlet-class, talvez seja isso.

<servlet-class>>br.com.caelum.servlet.AdicionaContatoServlet</servlet-class>

Dá uma olhada no console do Tomcat pra ver se não tá sendo lançada uma exceção quando a aplicação é carrega.

mto obrigado, o problema era este mesmo