Testbed configration: IdPv4 works on Rocky8/JDK 11/Jetty 10/ but not Rocky9/JDK 17/Jetty 11/

Kevin Buckley kevin.buckley.pawsey.org.au at gmail.com
Fri Oct 6 08:15:32 UTC 2023


On 2023/10/06 15:14, Kevin Buckley wrote:
> Having got my Shibboleth testbed going, with a 4.3.1 IdP
> deployed on top of
> 
> OS:    Rocky 8
> JDK:   java-11-openjdk
> Jetty: 10
> 
> I thought I'd take a look at IdP v5, which came out as I
> was creating the testbed.
> 
> I noted in the v5 docs that there's a suggestion that one
> shouldn't (for now anyway) try and deploy a v5 IdP from
> scratch, but upgrade on top of an existing v4 deployment.
> 
> However, I also noticed that the v5 requirements were
> 
> JDK:   java-17-openjdk
> Jetty: 11
> 
> so I thought to go back and re-install IdP 4.3.1 on top of
> 
> OS:    Rocky 9
> JDK:   java-17-openjdk
> Jetty: 11
> 
> so as to have something viable to upgrade from.
> 
> I thought that I had followed the notes I'd made pretty
> closely but am seeing, as the Jetty tries to fire up
> the IdP WAR-file, the following in its console logging:
> 
> ...
> 14:44:47.546 [INFO] :main: (org.eclipse.jetty.deploy.providers.ScanningAppProvider) - Deployment monitor [file:///opt/Jetty/11.0.16/webapps/]
> 14:44:48.601 [INFO] :main: (org.eclipse.jetty.annotations.AnnotationConfiguration) - Error:  for o.e.j.w.WebAppContext at 58ce9668{idp.xml,/idp,[file:///tmp/jetty-0_0_0_0-8080-idp_war-_idp-any-10475424063315095864/webinf/, jar:file:///opt/shibboleth-idp/war/idp.war!/],STARTING}{/opt/shibboleth-idp/war/idp.war}
> 14:44:50.998 [WARN] :main: (org.eclipse.jetty.webapp.WebAppContext) - Failed startup of context o.e.j.w.WebAppContext at 58ce9668{Shibboleth Identity Provider,/idp,[file:///tmp/jetty-0_0_0_0-8080-idp_war-_idp-any-10475424063315095864/webinf/, jar:file:///opt/shibboleth-idp/war/idp.war!/],UNAVAILABLE}{/opt/shibboleth-idp/war/idp.war}
> java.lang.NoClassDefFoundError: javax/servlet/ServletContextListener
> ...
> 
> In case I am likely to have fallen foul of differences between
> the JDK-s or the Jetty-s, or both, or just missed somthing that
> I did before, I thought to ask if anyone has any insight or
> supposition that might inform what I am seeing?
> 
> Kevin Buckley

Might be in danger of pointing myself in the right direction here
in noting, from

https://stackoverflow.com/questions/66361859/jetty-11-doesnt-detect-servlets

that,

Jetty maintains the following versions (currently)
Jetty 		Servlet 	EE 		Namespace
Jetty 10.x 	Servlet 4.0 	Jakarta EE 8 	javax.servlet
Jetty 11.x 	Servlet 5.0 	Jakarta EE 9 	jakarta.servlet

and then doing the following from the IDP_HOME

$ grep -r "ServletContextListener" .
grep: ./dist/webapp/WEB-INF/lib/logback-classic-1.3.5.jar: binary file matches


so does that mean that I can't deploy a v4 IdP on top of Jetty 11,
even though I need to be on Jetty 11 to be able to upgrade the IdP
from v4 to v5 ?

Or it is saying that I should find/place an updated logback-classic
JAR that doesn't use the "javax.servlet" namespace and stick that in
to my v4 IdP ?




More information about the users mailing list