Java to Excel using JXLS
807589Sep 25 2006 — edited Sep 25 2008hi,
i am new to this forum... i am having an error in converstion to excel sheet.. i am using JXLS .. My sample program is here but i am getting a Class not found error..
package jexceldemo;
import java.io.*;
import org.jxls.exception.ParsePropertyException;
import org.jxls.transformer.XLSTransformer;
import org.apache.commons.logging.LogFactory;
import org.apache.commons.logging.impl.LogFactoryImpl;
import org.apache.commons.logging.LogConfigurationException;
import org.jxls.transformer.*;
import java.io.IOException;
import java.util.ArrayList;
import java.util.HashMap;
import java.util.List;
import java.util.Map;
public class excel {
public excel() {
try {
jbInit();
} catch (Exception ex) {
ex.printStackTrace();
}
}
private static String templateFileName = "C:\\temp1\\grouping.xls";
private static String destFileName = "C:\\temp1\\grouping_output.xls";
private static Department mobjDepartment =null;
public boolean addData(String pstrDepData, String[] pstrChiefData, String[][] palEmpData){
boolean mblnResStatus=false;
Employee mobjEmployees = null;
Employee mobjChief=null;
String name;
int age;
Double payment;
Double bonus;
try{
mobjDepartment = new Department(pstrDepData);
mobjChief=new Employee(pstrChiefData[0],Integer.parseInt(pstrChiefData[1]),Double.valueOf(pstrChiefData[2]),Double.valueOf(pstrChiefData[3]));
mobjDepartment.setChief(mobjChief);
System.out.println("Name\tAge\tPayment\tBonus");
System.out.println("------------------------------");
for(int inEmp=0;inEmp<palEmpData.length;inEmp++){
name = palEmpData[inEmp][0].toString();
age = Integer.parseInt(palEmpData[inEmp][1].toString());
payment = Double.valueOf(palEmpData[inEmp][2].toString());
bonus = Double.valueOf(palEmpData[inEmp][3].toString());
mobjEmployees = new Employee(name, age, payment, bonus);
mobjDepartment.addEmployee(mobjEmployees);
System.out.println(name+"\t"+age+"\t"+payment+"\t"+bonus);
}
System.out.println("------------------------------");
}
catch(Exception mobjEx){
System.out.println("Error"+mobjEx.getMessage());
}
return mblnResStatus;
}
public static void main(String[] args) throws IOException, ParsePropertyException {
excel ex=new excel();
if (args.length >= 2) {
templateFileName = args[0];
destFileName = args[1];
}
String[] mstrobjChief={"Pravin","23","2500","1000"};
String[][] mstrobjEmp=new String[5][4];
for(int inEmpinfo=0;inEmpinfo<5;inEmpinfo++){
mstrobjEmp[inEmpinfo][0]="Name"+inEmpinfo;
mstrobjEmp[inEmpinfo][1]=""+inEmpinfo;
mstrobjEmp[inEmpinfo][2]=""+inEmpinfo;
mstrobjEmp[inEmpinfo][3]=""+inEmpinfo;
}
ex.addData("IT",mstrobjChief,mstrobjEmp);
Map beans = new HashMap();
beans.put("departments", mobjDepartment);
XLSTransformer transformer = new XLSTransformer();
transformer.transformXLS(templateFileName, beans, destFileName);
}
private void jbInit() throws Exception {
}
}
...............................
The error i am getting is
...............................
java.lang.NoClassDefFoundError: org/apache/commons/logging/LogFactory
at org.jxls.transformer.XLSTransformer.<init>(XLSTransformer.java:30)
at jexceldemo.excel.main(excel.java:93)
Exception in thread "main"
.................................
Eployee and Department are bean classes..