Sure..
package coreservlets;
import javax.servlet.*;
import javax.servlet.http.*;
import java.io.*;
import java.util.*;
import java.sql.SQLException;
import com.aspose.cells.*;
import com.aspose.cells.Chart;
import org.apache.log4j.*;
import org.apache.log4j.Logger;
public class HelloWorldServlet extends HttpServlet
{
//ServletContext sc = getServletContext();
ServletContext sc;
private static final String TEMPLATE_FILE_PATH_PART = "/WEB-INF/Designer/Workbooks/HelloWorld.xls";
Logger logger;
public void init(ServletConfig config) throws ServletException
{
super.init(config);
sc = config.getServletContext();
logger = Logger.getLogger("HelloWorldServlet.class");
}
public void doGet(HttpServletRequest request, HttpServletResponse response) throws IOException, ServletException
{
OutputStream out = response.getOutputStream();
RequestDispatcher rd = sc.getRequestDispatcher("/errorpage.jsp");
try
{
ServletContext sc = getServletContext();
String template_file_path = sc.getRealPath(TEMPLATE_FILE_PATH_PART);
System.out.println("***** template_file_path *****"+template_file_path);
setResponseHeader(response, "HelloWorld.xls");
CreateHelloWorld(out, template_file_path);
System.out.println("Calling CreateHelloWorld()");
rd = sc.getRequestDispatcher("/ExcelForm.jsp");
}
catch (Exception ex)
{
ex.printStackTrace();
// say sorry
response.setContentType("text/html");
PrintWriter writer = new PrintWriter(out);
writer.println("");
writer.println("");
writer.println("sorry");
writer.println("");
writer.println("");
writer.println("
Sorry, the demo programme failed for some reason.
");
ex.printStackTrace(writer);
writer.println("");
writer.println("");
writer.close();
}
}
public void doPost(HttpServletRequest request, HttpServletResponse response) throws IOException, ServletException
{
doGet(request, response);
}
private void setResponseHeader(HttpServletResponse response, String resultXLS)
{
System.out.println("setResponseHeader Start");
response.setContentType("application/vnd.ms-excel");
response.addHeader("content-disposition", "inline; filename=" + resultXLS);
System.out.println("setResponseHeader End");
}
private void CreateHelloWorld(OutputStream out, String template_file_path) throws IOException
{
Workbook workbook = new Workbook();
System.out.println("Crating workbook");
System.out.println("template_file_path :"+template_file_path);
workbook.open(template_file_path);
System.out.println("opening workbook");
CreateStaticReport(workbook);
System.out.println("after creating workbook");
//Saving the Excel file
workbook.save(out);
}
private void CreateStaticReport(Workbook workbook)
{
Worksheets worksheets = workbook.getWorksheets();
Worksheet worksheet = worksheets.getSheet(0);
Cells cells = worksheet.getCells();
Cell cell;
//Put a string value into the cell using its name
cell = cells.getCell("A1");
cell.setValue("Cell Value");
//put a string value into the cell using its name
cell = cells.getCell("A2");
cell.setValue("Hello World");
//Put an boolean value into the cell using its name
cell = cells.getCell("A3");
cell.setValue(true);
//Put an int value into the cell using its name
cell = cells.getCell("A4");
cell.setValue(100);
//Put an double value into the cell using its name
cell = cells.getCell("A5");
cell.setValue(2856.5);
//Put an object value into the cell using its name
Object obj = "Aspose";
cell = cells.getCell("A6");
cell.setValue(obj);
//Put an datetime value into the cell
Calendar calendar = Calendar.getInstance();
cell = cells.getCell("A7");
cell.setValue(calendar);
Style style = cell.getStyle();
style.setNumber(14);
cell.setStyle(style);
//Put a string value into the cell using its row and column
cell = cells.getCell(0,1);
cell.setValue("Cell Value Type");
int temp ;
for (int i = 1; i < 7; i ++)
{
temp = cells.getCell(i, 0).getValueType();
cell = cells.getCell(i, 1);
switch (temp)
{
case CellValueType.NULL:
cell.setValue("Null");
break;
case CellValueType.BOOLEAN:
cell.setValue("Boolean");
break;
case CellValueType.DATETIME:
cell.setValue("Calendar");
break;
case CellValueType.STRING:
cell.setValue("String");
break;
case CellValueType.INT:
cell.setValue("Integer");
break;
case CellValueType.DOUBLE:
cell.setValue("Double");
break;
case CellValueType.RICH_TEXT_STRING:
cell.setValue("String");
break;
}
}
}
}