Wednesday, December 11, 2024

Overriding ServletContainerLauncher not sufficient for Servlet 5.0/Jakarta migration of DevMode

Sadly, GWT 2.12.1 still contains bundled Jetty 9, which is incompatible with Servlet 5.0.  Upon looking into it, I see that the suggestion is to override ServletContainerLauncher with my own implementation that launches Jetty 11+.

I'm running GWT DevMode from an ant environment, so I updated the ant task to have the proper JARs for Jetty 11, overrode ServletContainerLauncher, and tried to launch DevMode.  However, although DevMode does launch Jetty 11, the CodeServer crashes because of its dependence on javax - looking at the source I see that it has hardcoded javax imports.

So is it impossible to use the built-in CodeServer when you override ServletContainerLauncher?  What's the point of DevMode without CodeServer?

I see lots of suggestions to launch CodeServer separately, but even this may still have a problem.  ChatGPT says that some shared client/server code may contain servlet class references, which means that CodeServer might be faces with compiling jakarta imports.  This is going to fail obviously.  So what's the guidance here?  Is CodeServer dead too?  Or is there a Jakarta-based CodeServer in GWT 2.12.1 too?

--
You received this message because you are subscribed to the Google Groups "GWT Users" group.
To unsubscribe from this group and stop receiving emails from it, send an email to google-web-toolkit+unsubscribe@googlegroups.com.
To view this discussion visit https://groups.google.com/d/msgid/google-web-toolkit/3b18c8c6-cdb1-44c1-8604-b481df91f89fn%40googlegroups.com.

No comments:

Post a Comment