Pdf generation not possible with tomcat - 500 Internal Server Error

Hello,

tomcat should be used for the creation of PDF (jetty is unfortunately not available). But it aborts as follows during generation

Get PDF first time

Server error: `POST http://127.0.0.1:8080/BShtml2PDF/UploadAsset` resulted in a `500 Internal Server Error` response: <!doctype html><html lang="de"><head><title>HTTP Status 500 - Internal Server Error</title><style type="text/css">body (truncated...)

Get PDF second time

Client error: `POST http://127.0.0.1:8080/BShtml2PDF/UploadAsset` resulted in a `404 Not Found` response: <!doctype html><html lang="de"><head><title>HTTP Status 404 - nicht gefunden</title><style type="text/css">body {font- (truncated...) 

The file system rights should be correct, Installing Procedure also …
Why is servlet [UploadAsset] marked as unavailable?

Status BShtmlPDF
http:/XX:8080/BShtml2PDF/ → successfull
Service Status: [OK]

message/error log
sudo cat /var/log/tomcat/catalina.out

14-Mar-2025 12:19:57.488 INFORMATION [main] org.apache.catalina.startup.VersionLoggerListener.log Server Version:        Apache Tomcat/9.0.98
14-Mar-2025 12:19:57.490 INFORMATION [main] org.apache.catalina.startup.VersionLoggerListener.log Server built:          Jan 3 2025 12:00:00 UTC
14-Mar-2025 12:19:57.491 INFORMATION [main] org.apache.catalina.startup.VersionLoggerListener.log Server version number: 9.0.98.0
14-Mar-2025 12:19:57.491 INFORMATION [main] org.apache.catalina.startup.VersionLoggerListener.log OS Name:               Linux
14-Mar-2025 12:19:57.491 INFORMATION [main] org.apache.catalina.startup.VersionLoggerListener.log OS Version:            6.4.0-150600.23.33-default
14-Mar-2025 12:19:57.491 INFORMATION [main] org.apache.catalina.startup.VersionLoggerListener.log Architektur:           amd64
14-Mar-2025 12:19:57.491 INFORMATION [main] org.apache.catalina.startup.VersionLoggerListener.log Java Home:             /usr/lib64/jvm/java-11-openjdk-11
14-Mar-2025 12:19:57.491 INFORMATION [main] org.apache.catalina.startup.VersionLoggerListener.log JVM Version:           11.0.25+9-suse-150000.3.119.1-x8664
14-Mar-2025 12:19:57.491 INFORMATION [main] org.apache.catalina.startup.VersionLoggerListener.log JVM Hersteller:        Oracle Corporation
14-Mar-2025 12:19:57.491 INFORMATION [main] org.apache.catalina.startup.VersionLoggerListener.log CATALINA_BASE:         /usr/share/tomcat
14-Mar-2025 12:19:57.491 INFORMATION [main] org.apache.catalina.startup.VersionLoggerListener.log CATALINA_HOME:         /usr/share/tomcat
14-Mar-2025 12:19:57.499 INFORMATION [main] org.apache.catalina.startup.VersionLoggerListener.log Command line argument: -Djavax.sql.DataSource.Factory=org.apache.commons.dbcp.BasicDataSourceFactory
14-Mar-2025 12:19:57.500 INFORMATION [main] org.apache.catalina.startup.VersionLoggerListener.log Command line argument: -Dcatalina.base=/usr/share/tomcat
14-Mar-2025 12:19:57.500 INFORMATION [main] org.apache.catalina.startup.VersionLoggerListener.log Command line argument: -Dcatalina.home=/usr/share/tomcat
14-Mar-2025 12:19:57.500 INFORMATION [main] org.apache.catalina.startup.VersionLoggerListener.log Command line argument: -Djava.endorsed.dirs=
14-Mar-2025 12:19:57.500 INFORMATION [main] org.apache.catalina.startup.VersionLoggerListener.log Command line argument: -Djava.io.tmpdir=/var/cache/tomcat/temp
14-Mar-2025 12:19:57.500 INFORMATION [main] org.apache.catalina.startup.VersionLoggerListener.log Command line argument: -Djava.util.logging.config.file=/usr/share/tomcat/conf/logging.properties
14-Mar-2025 12:19:57.500 INFORMATION [main] org.apache.catalina.startup.VersionLoggerListener.log Command line argument: -Djava.util.logging.manager=org.apache.juli.ClassLoaderLogManager
14-Mar-2025 12:19:57.503 INFORMATION [main] org.apache.catalina.core.AprLifecycleListener.lifecycleEvent An older version [1.2.38] of the Apache Tomcat Native library is installed, while Tomcat recommends a minimum version of [1.3.0]
14-Mar-2025 12:19:57.503 INFORMATION [main] org.apache.catalina.core.AprLifecycleListener.lifecycleEvent Loaded Apache Tomcat Native library [1.2.38] using APR version [1.6.3].
14-Mar-2025 12:19:57.503 INFORMATION [main] org.apache.catalina.core.AprLifecycleListener.lifecycleEvent APR capabilities: IPv6 [true], sendfile [true], accept filters [false], random [true], UDS [true].
14-Mar-2025 12:19:57.503 INFORMATION [main] org.apache.catalina.core.AprLifecycleListener.lifecycleEvent APR/OpenSSL configuration: useAprConnector [false], useOpenSSL [true]
14-Mar-2025 12:19:57.506 INFORMATION [main] org.apache.catalina.core.AprLifecycleListener.initializeSSL OpenSSL successfully initialized [OpenSSL 1.1.1w-fips  11 Sep 2023 SUSE release 150600.5.9.1]
14-Mar-2025 12:19:57.715 INFORMATION [main] org.apache.coyote.AbstractProtocol.init Initialisiere ProtocolHandler["http-nio-8080"]
14-Mar-2025 12:19:57.731 INFORMATION [main] org.apache.catalina.startup.Catalina.load Server initialization in [383] milliseconds
14-Mar-2025 12:19:57.769 INFORMATION [main] org.apache.catalina.core.StandardService.startInternal Starting service [Catalina]
14-Mar-2025 12:19:57.769 INFORMATION [main] org.apache.catalina.core.StandardEngine.startInternal Starting Servlet engine: [Apache Tomcat/9.0.98]
14-Mar-2025 12:19:57.784 INFORMATION [main] org.apache.catalina.startup.HostConfig.deployWAR Deploying web application archive [/srv/tomcat/webapps/BShtml2PDF.war]
14-Mar-2025 12:19:57.793 WARNUNG [main] org.apache.tomcat.util.digester.SetPropertiesRule.begin Match [Context] failed to set property [antiJARLocking] to [true]
14-Mar-2025 12:19:58.306 INFORMATION [main] org.apache.jasper.servlet.TldScanner.scanJars At least one JAR was scanned for TLDs yet contained no TLDs. Enable debug logging for this logger for a complete list of JARs that were scanned but no TLDs were found in them. Skipping unneeded JARs during scanning can improve startup time and JSP compilation time.
14-Mar-2025 12:19:58.339 INFORMATION [main] org.apache.catalina.startup.HostConfig.deployWAR Deployment of web application archive [/srv/tomcat/webapps/BShtml2PDF.war] has finished in [553] ms
14-Mar-2025 12:19:58.339 INFORMATION [main] org.apache.catalina.startup.HostConfig.deployDirectory Deploye Web-Applikations-Verzeichnis [/srv/tomcat/webapps/examples]
14-Mar-2025 12:19:58.533 INFORMATION [main] org.apache.jasper.servlet.TldScanner.scanJars At least one JAR was scanned for TLDs yet contained no TLDs. Enable debug logging for this logger for a complete list of JARs that were scanned but no TLDs were found in them. Skipping unneeded JARs during scanning can improve startup time and JSP compilation time.
14-Mar-2025 12:19:58.535 INFORMATION [main] org.apache.catalina.startup.HostConfig.deployDirectory Deployment of web application directory [/srv/tomcat/webapps/examples] has finished in [196] ms
14-Mar-2025 12:19:58.535 INFORMATION [main] org.apache.catalina.startup.HostConfig.deployDirectory Deploye Web-Applikations-Verzeichnis [/srv/tomcat/webapps/ROOT]
14-Mar-2025 12:19:58.742 INFORMATION [main] org.apache.jasper.servlet.TldScanner.scanJars At least one JAR was scanned for TLDs yet contained no TLDs. Enable debug logging for this logger for a complete list of JARs that were scanned but no TLDs were found in them. Skipping unneeded JARs during scanning can improve startup time and JSP compilation time.
14-Mar-2025 12:19:58.743 INFORMATION [main] org.apache.catalina.startup.HostConfig.deployDirectory Deployment of web application directory [/srv/tomcat/webapps/ROOT] has finished in [208] ms
14-Mar-2025 12:19:58.744 INFORMATION [main] org.apache.catalina.startup.HostConfig.deployDirectory Deploye Web-Applikations-Verzeichnis [/srv/tomcat/webapps/sample]
14-Mar-2025 12:19:58.922 INFORMATION [main] org.apache.jasper.servlet.TldScanner.scanJars At least one JAR was scanned for TLDs yet contained no TLDs. Enable debug logging for this logger for a complete list of JARs that were scanned but no TLDs were found in them. Skipping unneeded JARs during scanning can improve startup time and JSP compilation time.
14-Mar-2025 12:19:58.923 INFORMATION [main] org.apache.catalina.startup.HostConfig.deployDirectory Deployment of web application directory [/srv/tomcat/webapps/sample] has finished in [179] ms
14-Mar-2025 12:19:58.929 INFORMATION [main] org.apache.coyote.AbstractProtocol.start Starting ProtocolHandler ["http-nio-8080"]
14-Mar-2025 12:19:58.941 INFORMATION [main] org.apache.catalina.startup.Catalina.start Server startup in [1209] milliseconds

sudo cat /var/log/tomcat/localhost.log

14-Mar-2025 12:53:26.759 INFORMATION [http-nio-8080-exec-6] org.apache.catalina.core.ApplicationContext.log Marking **servlet [UploadAsset] as unavailable**
14-Mar-2025 12:53:26.760 SCHWERWIEGEND [http-nio-8080-exec-6] org.apache.catalina.core.StandardWrapperValve.invoke Allocate exception for servlet [UploadAsset]
        java.lang.ClassNotFoundException: jakarta.servlet.http.HttpServlet
                at org.apache.catalina.loader.WebappClassLoaderBase.loadClass(WebappClassLoaderBase.java:1349)
                at org.apache.catalina.loader.WebappClassLoaderBase.loadClass(WebappClassLoaderBase.java:1158)
                at java.base/java.lang.ClassLoader.defineClass1(Native Method)
                at java.base/java.lang.ClassLoader.defineClass(ClassLoader.java:1022)
                at java.base/java.security.SecureClassLoader.defineClass(SecureClassLoader.java:174)
                at org.apache.catalina.loader.WebappClassLoaderBase.findClassInternal(WebappClassLoaderBase.java:2339)
                at org.apache.catalina.loader.WebappClassLoaderBase.findClassInternal(WebappClassLoaderBase.java:2208)
                at org.apache.catalina.loader.WebappClassLoaderBase.findClass(WebappClassLoaderBase.java:823)
                at org.apache.catalina.loader.WebappClassLoaderBase.loadClass(WebappClassLoaderBase.java:1310)
                at org.apache.catalina.loader.WebappClassLoaderBase.loadClass(WebappClassLoaderBase.java:1158)
                at org.apache.catalina.core.DefaultInstanceManager.loadClass(DefaultInstanceManager.java:488)
                at org.apache.catalina.core.DefaultInstanceManager.loadClassMaybePrivileged(DefaultInstanceManager.java:470)
                at org.apache.catalina.core.DefaultInstanceManager.newInstance(DefaultInstanceManager.java:142)
                at org.apache.catalina.core.StandardWrapper.loadServlet(StandardWrapper.java:898)
                at org.apache.catalina.core.StandardWrapper.allocate(StandardWrapper.java:659)
                at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:116)
                at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:90)
                at org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:482)
                at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:130)
                at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:93)
                at org.apache.catalina.valves.AbstractAccessLogValve.invoke(AbstractAccessLogValve.java:660)
                at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:74)
                at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:346)
                at org.apache.coyote.http11.Http11Processor.service(Http11Processor.java:396)
                at org.apache.coyote.AbstractProcessorLight.process(AbstractProcessorLight.java:63)
                at org.apache.coyote.AbstractProtocol$ConnectionHandler.process(AbstractProtocol.java:937)
                at org.apache.tomcat.util.net.NioEndpoint$SocketProcessor.doRun(NioEndpoint.java:1791)
                at org.apache.tomcat.util.net.SocketProcessorBase.run(SocketProcessorBase.java:52)
                at org.apache.tomcat.util.threads.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1190)
                at org.apache.tomcat.util.threads.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:659)
                at org.apache.tomcat.util.threads.TaskThread$WrappingRunnable.run(TaskThread.java:63)
                at java.base/java.lang.Thread.run(Thread.java:829)
sschmid4@zt004253:/var> sudo cat /var/log/tomcat/localhost.log
14-Mar-2025 12:53:26.759 INFORMATION [http-nio-8080-exec-6] org.apache.catalina.core.ApplicationContext.log Marking servlet [UploadAsset] as unavailable
14-Mar-2025 12:53:26.760 SCHWERWIEGEND [http-nio-8080-exec-6] org.apache.catalina.core.StandardWrapperValve.invoke Allocate exception for servlet [UploadAsset]
        java.lang.ClassNotFoundException: jakarta.servlet.http.HttpServlet
                at org.apache.catalina.loader.WebappClassLoaderBase.loadClass(WebappClassLoaderBase.java:1349)
                at org.apache.catalina.loader.WebappClassLoaderBase.loadClass(WebappClassLoaderBase.java:1158)
                at java.base/java.lang.ClassLoader.defineClass1(Native Method)
                at java.base/java.lang.ClassLoader.defineClass(ClassLoader.java:1022)
                at java.base/java.security.SecureClassLoader.defineClass(SecureClassLoader.java:174)
                at org.apache.catalina.loader.WebappClassLoaderBase.findClassInternal(WebappClassLoaderBase.java:2339)
                at org.apache.catalina.loader.WebappClassLoaderBase.findClassInternal(WebappClassLoaderBase.java:2208)
                at org.apache.catalina.loader.WebappClassLoaderBase.findClass(WebappClassLoaderBase.java:823)
                at org.apache.catalina.loader.WebappClassLoaderBase.loadClass(WebappClassLoaderBase.java:1310)
                at org.apache.catalina.loader.WebappClassLoaderBase.loadClass(WebappClassLoaderBase.java:1158)
                at org.apache.catalina.core.DefaultInstanceManager.loadClass(DefaultInstanceManager.java:488)
                at org.apache.catalina.core.DefaultInstanceManager.loadClassMaybePrivileged(DefaultInstanceManager.java:470)
                at org.apache.catalina.core.DefaultInstanceManager.newInstance(DefaultInstanceManager.java:142)
                at org.apache.catalina.core.StandardWrapper.loadServlet(StandardWrapper.java:898)
                at org.apache.catalina.core.StandardWrapper.allocate(StandardWrapper.java:659)
                at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:116)
                at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:90)
                at org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:482)
                at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:130)
                at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:93)
                at org.apache.catalina.valves.AbstractAccessLogValve.invoke(AbstractAccessLogValve.java:660)
                at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:74)
                at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:346)
                at org.apache.coyote.http11.Http11Processor.service(Http11Processor.java:396)
                at org.apache.coyote.AbstractProcessorLight.process(AbstractProcessorLight.java:63)
                at org.apache.coyote.AbstractProtocol$ConnectionHandler.process(AbstractProtocol.java:937)
                at org.apache.tomcat.util.net.NioEndpoint$SocketProcessor.doRun(NioEndpoint.java:1791)
                at org.apache.tomcat.util.net.SocketProcessorBase.run(SocketProcessorBase.java:52)
                at org.apache.tomcat.util.threads.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1190)
                at org.apache.tomcat.util.threads.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:659)
                at org.apache.tomcat.util.threads.TaskThread$WrappingRunnable.run(TaskThread.java:63)
                at java.base/java.lang.Thread.run(Thread.java:829)

System info:

  • OS: Suse SLES 15.6
  • Server: Apache 2.4
  • PHP: php 8.2 fpm
  • BlueSpice version: 4.4.x
  • Browser version: multiple

I’m stuck at the moment and maybe someone here can help me.

Thank you

STI

Hello and welcome to the BlueSpice Community Forums!

indicates an incompatible Tomcat version. You are using Apache Tomcat/9.0.98 which should be compatible due to Setup:System requirements - BlueSpice Helpdesk. I guess the docs are just outdated here. Consider using a more recent version of Tomcat or the bluespice/pdf:4.5 container image: https://hub.docker.com/layers/bluespice/pdf/4.5/images/sha256-486a7bd2e2b877c1faf52af53f0f5f253a30baf407d9aa1d51e9a990ab258838 (see also docker-bluespice-pdf/Dockerfile at 4.5.x · hallowelt/docker-bluespice-pdf · GitHub)

Hello and thank you very much for the advice.

I have actually installed the Docker service in the meantime, which will probably also resolve the dependencies better in the long term.

See you soon and thanks for your great work

STI