Servlet básico não retorna status

Boa galera!

Gente, estou tendo um probleminha. É o seguinte:
Fiz um formulário simples, porém ele não retorna nada e dá um excessão. Gostaria de saber onde estou errando.
o coe está aqui:

Servlet:

package br.rj.msb.loja;

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

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


public class Cadastro extends HttpServlet{

	private static final long serialVersionUID = 1L;

	public void processRequest(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException{
		
		String nome = request.getParameter("nome");
		String email = request.getParameter("email");
		
		response.setContentType("text/html;charset=utf-8");
		PrintWriter out = response.getWriter();
		
		out.println("<html>");
		out.println("<head>");
		out.println("<title>ProjetoCadastro</title>");
		out.println("</head>");
		out.println("<body>");
		out.println("<h2>Dados Recebidos</h2>");
		out.println(String.format("nome <b><u>%s</u></b><br>", nome));
		out.println(String.format("email <b><u>%s</u></b><br>", email));
		out.println("</body>");
		out.println("</html>");
		out.close();
		
		
		
		
		
		
	}

}

index:

<%@ page language="java" contentType="text/html; charset=ISO-8859-1"
    pageEncoding="ISO-8859-1"%>
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
<title>Projeto_Cadastro</title>
</head>
<body>
	<h1>Cadastro</h1>
	<form action="principal" name="formulario1" method="post" >
	
		Nome:  <input type="text" name="nome" width="50" /><br />
		Email: <input type="text" name="email" width="50" /><br />
			   <input type="submit" value="gravar" />
	</form>
</body>
</html>

web.xml

<?xml version="1.0" encoding="UTF-8"?>
<web-app xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://java.sun.com/xml/ns/javaee" 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" id="WebApp_ID" version="2.5">
  <display-name>PrimeiroServlet</display-name>
  <welcome-file-list>
    <welcome-file>index.html</welcome-file>
    <welcome-file>index.htm</welcome-file>
    <welcome-file>index.jsp</welcome-file>
  </welcome-file-list>
  <servlet>
    <servlet-name>Servlet_Cadastro</servlet-name>
    <servlet-class>br.rj.msb.loja.Cadastro</servlet-class>
    <load-on-startup>1</load-on-startup>
  </servlet>
  <servlet-mapping>
    <servlet-name>Servlet_Cadastro</servlet-name>
    <url-pattern>/principal</url-pattern>
  </servlet-mapping>
</web-app>

Você debugou? A request chegou na servlet??

Posta o erro, pra ficar mais fácil.

Bom Caio, o erro é esse:

cara, não está encontrando o metodo para processar o post.
Sobrescreve o metodo doPost, e faz a chamada para o metodo “processRequest”.

ou se quiser só alterar o processRequest para doPost.

Cara, muitíssimo obrigado!
Problema resolvido.