Package: tomcat10
Version: 10.1.34-0+deb12u2
Severity: normal

Dear Maintainer,

I'm trying to setup a webapp (css-validator) with the xml file in
/etc/tomcat10/Catalina/localhost/css-validator.xml

Since the webapp still uses the javax.servlet classes, I made use of

<Loader jakartaConverter="TOMCAT" />

so that tomcat automatically converts the class names from javax.servlet to 
jakarta.servlet

When restarting tomcat10, it fails with ClassNotFoundException: 
org.apache.tomcat.jakartaee.EESpecProfile

Jun 24 18:35:15 debian tomcat10[38718]: Caused by:
org.apache.catalina.LifecycleException: Erreur lors du d<C3><A9>marrage du
chargeur
Jun 24 18:35:15 debian tomcat10[38718]:     at
org.apache.catalina.loader.WebappLoader.startInternal(WebappLoader.java:344)
Jun 24 18:35:15 debian tomcat10[38718]:     at
org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:164)
Jun 24 18:35:15 debian tomcat10[38718]:     at
org.apache.catalina.core.StandardContext.startInternal(StandardContext.java:4290)
Jun 24 18:35:15 debian tomcat10[38718]:     at
org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:164)
Jun 24 18:35:15 debian tomcat10[38718]:     at
org.apache.catalina.core.ContainerBase.addChildInternal(ContainerBase.java:599)
Jun 24 18:35:15 debian tomcat10[38718]:     ... 37 more
Jun 24 18:35:15 debian tomcat10[38718]: Caused by:
java.lang.NoClassDefFoundError: org/apache/tomcat/jakartaee/EESpecProfile
Jun 24 18:35:15 debian tomcat10[38718]:     at
org.apache.catalina.loader.WebappLoader.startInternal(WebappLoader.java:322)
Jun 24 18:35:15 debian tomcat10[38718]:     ... 41 more
Jun 24 18:35:15 debian tomcat10[38718]: Caused by:
java.lang.ClassNotFoundException: org.apache.tomcat.jakartaee.EESpecProfile
Jun 24 18:35:15 debian tomcat10[38718]:     at
java.base/java.net.URLClassLoader.findClass(URLClassLoader.java:445)
Jun 24 18:35:15 debian tomcat10[38718]:     at
java.base/java.lang.ClassLoader.loadClass(ClassLoader.java:592)
Jun 24 18:35:15 debian tomcat10[38718]:     at
java.base/java.lang.ClassLoader.loadClass(ClassLoader.java:525)


So I installed tomcat-jakartaee-migration package which holds the jar
containing the required class.

This is however not sufficient. I finally had to create a symbolic link in
/usr/share/tomcat10/lib to /usr/share/tomcat-jakartaee-migration/lib/jakartaee-
migration-1.0.6-shaded.jar

Shouldn't this be handled automatically by either tomcat package or tomcat-
jakartaee-migration package? How to proceed otherwise?

I suppose there will be the same issue with tomcat11.

Regards
Fab


-- System Information:
Debian Release: 12.11
  APT prefers stable-updates
  APT policy: (991, 'stable-updates'), (991, 'stable-security'), (991, 
'stable'), (990, 'proposed-updates'), (390, 'oldstable-security'), (390, 
'oldstable'), (389, 'oldstable-updates'), (380, 'oldoldstable'), (379, 
'oldoldstable-updates'), (370, 'oldoldstable'), (95, 'testing'), (94, 
'unstable'), (93, 'experimental')
Architecture: amd64 (x86_64)
Foreign Architectures: i386

Kernel: Linux 6.1.0-37-amd64 (SMP w/4 CPU threads; PREEMPT)
Kernel taint flags: TAINT_PROPRIETARY_MODULE, TAINT_WARN, TAINT_OOT_MODULE
Locale: LANG=fr_FR.UTF-8, LC_CTYPE=fr_FR.UTF-8 (charmap=UTF-8), 
LANGUAGE=fr:en_US
Shell: /bin/sh linked to /usr/bin/dash
Init: systemd (via /run/systemd/system)
LSM: AppArmor: enabled

Versions of packages tomcat10 depends on:
ii  systemd [systemd-tmpfiles]  252.38-1~deb12u1
ii  tomcat10-common             10.1.34-0+deb12u2
ii  ucf                         3.0043+nmu1+deb12u1

Versions of packages tomcat10 recommends:
ii  libtcnative-1  1.2.35-1

Versions of packages tomcat10 suggests:
pn  tomcat10-admin     <none>
pn  tomcat10-docs      <none>
pn  tomcat10-examples  <none>
pn  tomcat10-user      <none>

-- Configuration Files:
/etc/tomcat10/policy.d/01system.policy [Errno 13] Permission non accordée: 
'/etc/tomcat10/policy.d/01system.policy'
/etc/tomcat10/policy.d/02debian.policy [Errno 13] Permission non accordée: 
'/etc/tomcat10/policy.d/02debian.policy'
/etc/tomcat10/policy.d/03catalina.policy [Errno 13] Permission non accordée: 
'/etc/tomcat10/policy.d/03catalina.policy'
/etc/tomcat10/policy.d/04webapps.policy [Errno 13] Permission non accordée: 
'/etc/tomcat10/policy.d/04webapps.policy'
/etc/tomcat10/policy.d/50local.policy [Errno 13] Permission non accordée: 
'/etc/tomcat10/policy.d/50local.policy'

-- no debconf information

Reply via email to