Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

How to dynamically set header value in JSP

I have a JSP file which creates an Excel document.

I want to dynamically set the name of the file to be downloaded.

This is how I set the file name to "test.xsl":

<% response.setContentType("application/vnd.ms-excel"); 
   response.setHeader("Content-Disposition","attachment; filename=" + "test.xsl" ); 
%>

How can I set the file name to be test-${today's date}.xsl ( i.e. test-20100805.xsl ) ?

like image 764
jeph perro Avatar asked Aug 05 '10 18:08

jeph perro


1 Answers

String fname = MessageFormat.format( 
    "test-{0,date,yyyyMMdd}.xsl", new Object [] { new Date() } );
response.setHeader("Content-Disposition","attachment; filename=" + fname );

I think this should work for you.

The text in the braces tells the MessageFormat class to insert value 0 from the given array, format it as a date using the format yyyyMMdd (e.g. 20161231 for Dec 31st 2016).

like image 117
Shawn D. Avatar answered Nov 09 '22 03:11

Shawn D.