¿Cómo servir un archivo con JSP?

Esto puede sonar totalmente estúpido, pero es un caso de la vida real :(

Puedo mostrar una tabla HTML con un nombre de enlace "virtual".

Algo como esto:

Xyz description   <a href="docId=123">document.doc</a>

Xyz description  <a href="docId=456">documentB.doc</a>

Xyz description  <a href="docId=798">documentC.doc</a>

Este ID de documento representa un ID en la base de datos (para estos documentos se almacenan en un blob como byte [])

De todas formas. Puedo obtener esa identificación, consultar la base de datos y recuperar el byte [] (e incluso almacenarlo en un archivo tmp)

Lo que no puedo averiguar cómo hacerlo es que cuando el usuario hace clic en el enlace (y después de realizar la recuperación de la base de datos), "sirve" el byte [] al usuario.

Ahora lo peor, y lo que me hace hacer esta pregunta aquí, es que debo hacer esto solo con JSP (sin servlet) y sin bibliotecas de terceros (solo ... no me preguntes por qué lo odio también)

Asi que. ¿Cómo sirvo en un jsp el contenido binario de una matriz de bytes almacenada en el sistema de archivos del servidor?

Mi primer invitado es:

<%
InputStream read // read the file form the fle system 
response.getOutputStream().write( theBytesReader );
%>

¿Estoy cerca de la solución?

¿Esto funcionaría para el cliente como si hubiera hecho clic realmente en el servidor para obtener un archivo real?

Gracias por adelantado.

Respuestas a la pregunta(4)

Su respuesta a la pregunta