try {
//String filename=file_name.replace('/','_');
HSSFWorkbook workbook = new HSSFWorkbook();
HSSFSheet sheet = workbook.createSheet(file_name);
HSSFRow rowhead = sheet.createRow((short) 0);
filepath=prop.getProperty("file_store_path")+file_name+timeStamp+".xls";
FileOutputStream fileOut = new FileOutputStream(filepath);
/* rowhead.createCell((short) 1).setCellValue("Domain ID");*/
rowhead.createCell((short) 0).setCellValue("Person ID");
rowhead.createCell((short) 1).setCellValue("Domain ID");
rowhead.createCell((short) 2).setCellValue("First Name");
rowhead.createCell((short) 3).setCellValue("Last Name");
rowhead.createCell((short) 4).setCellValue("Email Address");
rowhead.createCell((short) 5).setCellValue("SBU");
int i = 1;
while (rs.next()){
HSSFRow row = sheet.createRow((short) i);
/* row.createCell((short) 0).setCellValue(rs.getString("domain_id"));*/
row.createCell((short) 0).setCellValue(rs.getString("person_id"));
row.createCell((short) 1).setCellValue(rs.getString("domain_id"));
row.createCell((short) 2).setCellValue(rs.getString("first_name") );
row.createCell((short) 3).setCellValue(rs.getString("last_name"));
row.createCell((short) 4).setCellValue(rs.getString("email_address"));
row.createCell((short) 5).setCellValue(rs.getString("business_unit"));
i++;
}
workbook.write(fileOut);
fileOut.close();
System.out.println("XLS done!!");
}
我在服务器端导出Excel工作表时出现问题。工作表在本地工作正常,但在服务器中部署时无法正常工作。我在这里使用XSSF格式(我也使用过HSSF但是遇到了不同的问题)。我在这里附上了错误信息。
我该如何解决这个问题?
我得到的错误是
java.lang.IndexOutOfBoundsException
at java.io.FileInputStream.readBytes(Native Method)
at java.io.FileInputStream.read(Unknown Source)
at com.controllers.ActiveUserReport.getDownloaded(ActiveUserReport.java:308)
at com.controllers.ActiveUserReport.doGet(ActiveUserReport.java:113)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:621)