我無法將響應從servlet導出到excel文件。請參考下面的代碼:Servlet - 導出對Excel文件的響應
Test.java:
@Override
public void doPost(HttpServletRequest request, HttpServletResponse response) throws IOException, ServletException {
response.setContentType("text/html");
out = response.getWriter();
out.print("<form name=\"test\" method=\"post\" action=\"Export\">");
out.print("<table border=\"1\" cellpadding=\"3\" bordercolor='black'");
out.print("<tr>");
out.print("<td>1</td>");
out.print("<td>hello how are you?</td>");
out.print("</tr>");
out.print("</table>");
out.print("<td><input type=\"submit\" name =\"submit1\" value=\"Export To Excel\"></td>");
out.print("</form>");
提交按鈕被點擊時產生的Excel工作表,其不包含任何值。查看點擊提交按鈕時調用的Export.java
。
Export.java
public class Export extends HttpServlet {
@Override
public void doPost(HttpServletRequest request, HttpServletResponse response) throws IOException, ServletException {
String submit1 = request.getParameter("submit1");
if (submit1 != null) {
response.setContentType("application/vnd.ms-excel");
response.setHeader("Content-Disposition", "attachment; filename=users.xls");
}
}
}
此外,已經觀察到,如果我在Test.java
,寫入下面的代碼其工作正常和excel表確實包含表中的值。
response.setContentType("application/vnd.ms-excel");
response.setHeader("Content-Disposition", "attachment; filename=users.xls");
有沒有什麼辦法的Export.java
輸出轉發到Test.java
點擊提交按鈕時。
爲什麼你只是不聲明Test.java的兩個響應行? – commit 2013-04-24 14:10:07
但這不符合我的目的:(!沒有其他方式? – sree127 2013-04-24 15:02:12