-1
두 클래스로 PDF를 생성하려고했지만 문서를 생성하는 함수에서 호출하는 줄에 NullPointerException이 있기 때문에 PDF가 생성되지 않았습니다. 두 번째 수업에서. 첫 번째 클래스에는 다른 많은 필요한 기능이 있기 때문에 pdf 생성 프로세스를 구분합니다. 이 문제의 원인을 모르겠습니다.itextpdf와 함께 pdf를 생성하려고 할 때 NullPointerException이 발생했습니다.
package org.ors.osc;
import java.io.File;
import java.io.FileNotFoundException;
import java.io.FileOutputStream;
import java.io.IOException;
import java.io.OutputStream;
import org.ors.osc.Eml2Pdf2;
import com.itextpdf.text.Document;
import com.itextpdf.text.DocumentException;
import com.itextpdf.text.Paragraph;
import com.itextpdf.text.pdf.PdfWriter;
public class Managepdf {
private Eml2Pdf2 eml2Pdf2;
public publishPdf2() {
Document doc = new Document();
File pdfFile = dataDir.resourcePdfFile(resource.getShortname());
OutputStream out = null;
try {
out = new FileOutputStream(pdfFile);
PdfWriter.getInstance(doc, out);
eml2Pdf2.writeEmlIntoPdf(doc); //In this part get null
} catch (Exception e) {
e.printStackTrace();
} finally {
if (out != null) {
try {
out.close();
} catch (IOException e) {
e.printStackTrace();
}
}
}
}
}
이 클래스 호출 기능 writeEmlIntoPdf
package org.ors.oscar;
import java.io.File;
import java.io.FileNotFoundException;
import java.io.FileOutputStream;
import java.io.IOException;
import java.io.OutputStream;
import com.itextpdf.text.Document;
import com.itextpdf.text.DocumentException;
import com.itextpdf.text.Paragraph;
import com.itextpdf.text.pdf.PdfWriter;
public class Eml2Pdf2 {
public void writeEmlIntoPdf (Document doc) throws DocumentException, FileNotFoundException {
doc.open();
doc.add(new Paragraph("Hello World, iText!!"));
doc.add(new Paragraph(":D"));
doc.close();
}
}
개인 Eml2Pdf2 eml2Pdf2 = 새로운 Eml2Pdf2(); 인스턴스화하지 않고 객체의 메소드에 액세스하려고합니다. 그러므로 NPE. – TEK