Hello, It seems the name changed [1] around Tomcat 10.0.0-M2 milestones. https://tomcat.apache.org/tomcat-10.0-doc/changelog.html
[1] Rename org.apache.tomcat.util.digester.Digester$EnvironmentPropertySource to org.apache.tomcat.util.digester.EnvironmentPropertySource. Patch provided by Bernd Bohmann. (markt) El vie, 16 feb 2024 a las 10:59, COURTAULT Francois (<francois.courta...@thalesgroup.com.invalid>) escribió: > THALES GROUP LIMITED DISTRIBUTION to email recipients > > Hello everyone, > > A person who has left the company add this line in the catalina.properties > file: > > org.apache.tomcat.util.digester.PROPERTY_SOURCE=org.apache.tomcat.util.digester.Digester$EnvironmentPropertySource > > Reading at Tomcat 8.5 doc, I found this > org.apache.tomcat.util.digester.PROPERTY_SOURCE : Set this to a comma > separated list of fully qualified name of classes that implement > org.apache.tomcat.util.IntrospectionUtils.PropertySource. > Required to have a public constructor with no arguments. > > Possible value: org.apache.tomcat.util.digester.EnvironmentPropertySource > and not org.apache.tomcat.util.digester.Digester$EnvironmentPropertySource > as the person set it. > > org.apache.tomcat.util.digester.EnvironmentPropertySource can be used to > replace parameters from the process' environment variables, e.g. injected > ConfigMaps or Secret objects in container based systems like OpenShift or > Kubernetes. > > Do you think that this person has made a mistake? > > The funny thing is that with TomEE Plus 8.0.16, the last sections of > catalina.properties looks like below > # String cache configuration. > tomcat.util.buf.StringCache.byte.enabled=true > #tomcat.util.buf.StringCache.char.enabled=true > #tomcat.util.buf.StringCache.trainThreshold=500000 > #tomcat.util.buf.StringCache.cacheSize=5000 > > # Disable use of some privilege blocks Tomcat doesn't need since calls to > the > # code in question are always already inside a privilege block > org.apache.el.GET_CLASSLOADER_USE_PRIVILEGED=false > > org.apache.tomcat.util.digester.PROPERTY_SOURCE=org.apache.tomcat.util.digester.Digester$EnvironmentPropertySource > and I got no error 😊 > > With TomEEFull 9.1.2, the last section looks like below: > # String cache configuration. > tomcat.util.buf.StringCache.byte.enabled=true > #tomcat.util.buf.StringCache.char.enabled=true > #tomcat.util.buf.StringCache.trainThreshold=500000 > #tomcat.util.buf.StringCache.cacheSize=5000 > > org.apache.tomcat.util.digester.PROPERTY_SOURCE=org.apache.tomcat.util.digester.Digester$EnvironmentPropertySource > > This time I got some errors like > > * 16-Feb-2024 08:35:34.848 SEVERE [main] > jdk.internal.reflect.NativeMethodAccessorImpl.invoke Error loading property > source [org.apache.tomcat.util.digester.Digester$EnvironmentPropertySource] > java.lang.ClassNotFoundException: > org.apache.tomcat.util.digester.Digester$EnvironmentPropertySource > > I don’t understand why I got no error with TomEE Plus 8.0.16 because in > each case the class > org.apache.tomcat.util.digester.Digester$EnvironmentPropertySource > doesn’t exist. I was not able to find it (it should be in the > tomcat-util-scan.jar). > > So my guess is that this guy did a mistake by setting the property > org.apache.tomcat.util.digester.PROPERTY_SOURCE to > org.apache.tomcat.util.digester.Digester$EnvironmentPropertySource > instead of org.apache.tomcat.util.digester.EnvironmentPropertySource. > Do you agree ? > > Best Regards. > > > > -- Atentamente: César Hernández.