Quizás te sirva esto que voy a comentarte, yo lo use en cierta ocasión y me sorprendió bastante.
En código java, te guardas en un string una cadenas que represente código HTML completo, con su head, body,... yo en concreto tenía una tabla
<table><tr><td>.....</table>. Y guardas este string en un fichero con la extensión xls (de Excel).
Una vez hecho esto se puede abrir este fichero desde windows y aparecería una página excel con
la página HTML parecida a como se vería en un Navegador (más o menos).
Otra forma es que el código java donde hagas esto sea un Servlet, y este Servlet monte una página HTML con un botón donde haya un href.location="fichero.xls" de forma que al pulsarlo se abra el fichero excel con el código HTML hecho desde java.
Quizás estas ideas puedan darte alguna pista y serte útiles. Espero que sí.
Un saludo.