44 lines
1.1 KiB
Plaintext
44 lines
1.1 KiB
Plaintext
package com.bonus.doc;
|
|
|
|
import java.io.File;
|
|
import java.io.FileOutputStream;
|
|
import java.io.OutputStream;
|
|
|
|
import javax.servlet.http.HttpServletRequest;
|
|
|
|
import org.apache.log4j.Logger;
|
|
|
|
import com.lowagie.text.Document;
|
|
import com.lowagie.text.PageSize;
|
|
import com.lowagie.text.rtf.RtfWriter2;
|
|
|
|
public abstract class AbstractReportDocProducer {
|
|
|
|
protected Logger logger = Logger.getLogger(AbstractReportDocProducer.class);
|
|
|
|
public boolean product(String file,HttpServletRequest request) throws Exception {
|
|
File f = new File(file);
|
|
FileOutputStream fos = new FileOutputStream(f);
|
|
return product(fos,request);
|
|
}
|
|
|
|
public boolean product(OutputStream os,HttpServletRequest request) {
|
|
|
|
Document document = new Document(PageSize.A4, 90, 90, 70, 70);// top
|
|
try {
|
|
RtfWriter2 rtfWriter2 = RtfWriter2.getInstance(document, os);
|
|
rtfWriter2.getDocumentSettings().setImageWrittenAsBinary(false);
|
|
document.open();
|
|
product(document,request);
|
|
document.close();
|
|
return true;
|
|
} catch (Exception e) {
|
|
logger.error("gen doc error,",e);
|
|
return false;
|
|
}
|
|
}
|
|
|
|
public abstract boolean product(Document document,HttpServletRequest request);
|
|
|
|
}
|