Como has podido ver, has creado dos ejercicios en el cual trabajas el "Redireccionamiento" y el "Reenvio". Cuando ejecutas la aplicacion desde "indice.html", a simple vista, no percatas la diferencia, pero en realidad hay una diferencia y las vamos a explicar por partes. La primera parte es el "Redireccionamiento", ¿que ocurre aqui?, ¿cual es su funcion?.
Al principio, cuando hemos empezado el tema de los Servlets, has visto que te he puesto un esquema como este:
Este esquema, te lo he puesto, para que entiendas como trabaja "Cliente/Servidor" y visualmente eso es asi. Aunque, en realidad, podemos utilizar esto pero con redireccionamientos o reenvios.
Redireccionamiento
En el redireccionamiento, su palabra lo indica, lo que hace es redireccionar a otro lugar o pagina o aplicacion. Veamos, el Cliente, que es la pagina "indice.html", hace una peticion al Servlet "Aduana" y este Servlet lo que hace es decirle a Cliente que el no es el que se encarga de lo que esta buscando el Cliente, por tanto lo que hace el Servlet Aduana es decirle a Cliente; Toma, aqui tienes la direccion y encargate tu de ir a la direccion correcta. El esquema seria el siguiente:
Esta claro, el Cliente hace una peticion a Aduana y Aduana le dice a Cliente, toma la direccion de Servlet2, pero ve tu directamente a Servlet2.
Sin embargo, no ocurre lo mismo con el reenvio.
Reenvio
En este caso, el Cliente hace una peticion al Servlet Aduana y Aduana lo que hace es enviar directamente el Cliente al Servlet2, aqui el esquema:
El Servlet Aduana le dice a Cliente; no te preocupes, que yo mismo te envio al Servlet2.
La diferencia entre los dos es que en el Redireccionamiento, el Servlet Aduana, no se hace cargo de pasar de Servlet y en el Reenvio si.