¿Contenedor / framework de servidor autónomo Java simple?

Durante los últimos años he tenido mi cabeza en Python, donde existen numerosas opciones para marcos simples y mínimos que me permiten defender un sitio web o un servicio fácilmente (por ejemplo, web.py). Estoy buscando algo similar en Java.

¿Cuál es la forma más simple, con menos movimiento de partes, de hacer frente a los servicios simples que utilizan Java en estos días? Estoy buscando algo tan simple como:

la posibilidad de recibir solicitudes HTTPla capacidad de enviar esas solicitudes a los manejadores (preferiblemente una url basada en expresiones regulares a la facilidad de mapeo del manejador)la capacidad de establecer encabezados HTTP y, en general, controlar completamente la solicitud / respuesta

Puntos de bonificación si el marco juega bien con Jython.

[Actualización] Gracias por las respuestas, algunas de estas parecen bastante interesantes. Sin embargo, no estoy viendo la capacidad de envío de url en estos. Estoy buscando algo similar al sistema url.py de Django, que se parece a:

urlpatterns = patterns('',
    (r'^articles/2003/

Donde especifique una expresión regular de url junto con el controlador que la maneja.

, 'news.views.special_case_2003'), (r'^articles/(\d{4})/

Donde especifique una expresión regular de url junto con el controlador que la maneja.

, 'news.views.year_archive'), (r'^articles/(\d{4})/(\d{2})/

Donde especifique una expresión regular de url junto con el controlador que la maneja.

, 'news.views.month_archive'), (r'^articles/(\d{4})/(\d{2})/(\d+)/

Donde especifique una expresión regular de url junto con el controlador que la maneja.

, 'news.views.article_detail'), )

Donde especifique una expresión regular de url junto con el controlador que la maneja.

Respuestas a la pregunta(6)

Su respuesta a la pregunta