Solución: Desde la propia action que es llamada desde el enlace, colocaríamos el siguiente código:
try{
//obtengo el array de bytes del pdf
byte[] respuestaByte= this.miDelegate.getPDF();
//digo que es un pdf
response.setContentType("application/pdf");
//asigno el nombre del pdf, para cuando el usuario lo abra o descargue
response.setHeader("Content-Disposition",("attachment;filename=\"" +
nombrePDF+ ".pdf\""));
int longitud = respuestaByte.length;
//especifico el tamaño
response.setContentLength(longitud);
/*volcando a fichero*/
ServletOutputStream ouputStream = response.getOutputStream();
ouputStream.write(respuestaByte);
ouputStream.flush();
ouputStream.close();
}
catch(Exception e){
logger.error("No se ha podido regenerar correctamente el pdf");
}