Details
-
Bug
-
Status: Closed
-
Major
-
Resolution: Fixed
-
4.0.0-RC1
-
None
-
None
-
Java 11
Description
The integration tests atm, have a problem with a servlet implementation coming in, not reflecting the actual servlet version used by the myfaces-implementation.
SCHWERWIEGEND: Servlet.service() for servlet [FacesServlet] in context with path [/ajax-4.0.0-SNAPSHOT] threw exception ['java.lang.String jakarta.servlet.SessionCookieConfig.getAttribute(java.lang.String)'] with root cause
java.lang.NoSuchMethodError: 'java.lang.String jakarta.servlet.SessionCookieConfig.getAttribute(java.lang.String)'
at org.apache.myfaces.context.flash.FlashImpl._createFlashCookie(FlashImpl.java:1194)
at org.apache.myfaces.context.flash.FlashImpl._saveRenderFlashMapTokenForNextRequest(FlashImpl.java:774)
at org.apache.myfaces.context.flash.FlashImpl._manageFlashMapTokens(FlashImpl.java:889)
at org.apache.myfaces.context.flash.FlashImpl.doPrePhaseActions(FlashImpl.java:197)
at org.apache.myfaces.lifecycle.LifecycleImpl.executePhase(LifecycleImpl.java:155)
at org.apache.myfaces.lifecycle.LifecycleImpl.execute(LifecycleImpl.java:125)
at jakarta.faces.webapp.FacesServlet.service(FacesServlet.java:223)
The called api is present, but somewhere still an old servlet implementation is pushed into the container.
I have tried to upgrade to tomcat embedded 10, no dice. The api is correctly referenced though, and I can see it from the ide.
My idea is, that Aquilian might push an old servlet definition in during runtime.
Also the currently used Aquilian is incompatible with the latest jdks. (Proxy mechanism, which is used causes errors on the latest jdk)
I am still searching where the issue stems from, but so far no luck on my side.