Ошибка 500 для PdfWriter iText 8.0.5/Java/TomcatJAVA

Программисты JAVA общаются здесь
Ответить
Anonymous
 Ошибка 500 для PdfWriter iText 8.0.5/Java/Tomcat

Сообщение Anonymous »

Я хочу создать PDF-файл в сервлете Java8/Tomcat9.0 с использованием iText 8.0.5
Я получил здесь образец класса. Компиляция прошла нормально, но когда я загружаю страницу, я получаю ошибку 500.
Файлы jar присутствуют на моем tomcat: E:\Tomcat 9.0\webapps\Thanact\WEB-INF\lib
import com.itextpdf.kernel.pdf.PdfDocument;
import com.itextpdf.kernel.pdf.PdfWriter;
import com.itextpdf.kernel.colors.ColorConstants;
import com.itextpdf.layout.Document;
import com.itextpdf.layout.element.Paragraph;
import com.itextpdf.layout.element.Table;
import com.itextpdf.layout.properties.UnitValue;
import com.itextpdf.layout.element.Cell;
import com.itextpdf.layout.properties.TextAlignment;
import com.itextpdf.layout.borders.SolidBorder;

import javax.servlet.ServletException;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import java.io.IOException;

import java.io.OutputStream;

public class EtiquettesServlet extends HttpServlet {

@Override
protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
try {
// Test si la classe PdfWriter est bien chargée
Class.forName("com.itextpdf.kernel.pdf.PdfWriter");
System.out.println("Classe PdfWriter trouvée !");
} catch (ClassNotFoundException e) {
e.printStackTrace();
System.out.println("Classe PdfWriter non trouvée !");
response.sendError(HttpServletResponse.SC_INTERNAL_SERVER_ERROR, "Classe PdfWriter non trouvée !");
return;
}

// Le reste du code pour générer le PDF
response.setContentType("application/pdf");
response.setHeader("Content-Disposition", "attachment; filename=etiquettes.pdf");

try {
PdfWriter writer = new PdfWriter(response.getOutputStream());
PdfDocument pdf = new PdfDocument(writer);
Document document = new Document(pdf);
document.add(new Paragraph("Hello World!"));
document.close();
} catch (Exception e) {
e.printStackTrace();
response.sendError(HttpServletResponse.SC_INTERNAL_SERVER_ERROR, "Erreur lors de la génération du PDF : " + e.getMessage());
}
}

}
}

На веб-странице показано:
причина
java.lang.NoClassDefFoundError: org/slf4j/LoggerFactory
com.itextpdf.kernel.pdf.PdfOutputStream.(PdfOutputStream.java:48)

Но в журнале stdout tomcat я вижу свои классы iText.
Как это исправить?
/E:/Tomcat%209.0/webapps/Thanact/WEB-INF/classes/
/E:/Tomcat%209.0/webapps/Thanact/WEB-INF/lib/commons-8.0.5.jar
/E:/Tomcat%209.0/webapps/Thanact/WEB-INF/lib/gson-2.2.2.jar
/E:/Tomcat%209.0/webapps/Thanact/WEB-INF/lib/io-8.0.5.jar
/E:/Tomcat%209.0/webapps/Thanact/WEB-INF/lib/javax.servlet-api-3.0.1.jar
/E:/Tomcat%209.0/webapps/Thanact/WEB-INF/lib/jstl_1.2.5.jar
/E:/Tomcat%209.0/webapps/Thanact/WEB-INF/lib/kernel-8.0.5.jar
/E:/Tomcat%209.0/webapps/Thanact/WEB-INF/lib/layout-8.0.5.jar
/E:/Tomcat%209.0/webapps/Thanact/WEB-INF/lib/ojdbc6.jar
/E:/Tomcat%209.0/webapps/Thanact/WEB-INF/lib/sqljdbc.jar
/E:/Tomcat%209.0/webapps/Thanact/WEB-INF/lib/taglibs-standard-impl-1.2.5.jar
/E:/Tomcat%209.0/webapps/Thanact/WEB-INF/lib/taglibs-standard-spec-1.2.5.jar


Подробнее здесь: https://stackoverflow.com/questions/790 ... ava-tomcat
Ответить

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

Вернуться в «JAVA»