#1 I think Jens covers it well - something is almost certainly wrong with your modified jar or how the classpath is built.
For #2, the "-server" argument lets you specify a com.google.gwt.core.ext.ServletContainerLauncher type, so org.eclipse.jetty.server.Server will not suffice. If you do not specify one, as of GWT 2.12 the old default of com.google.gwt.dev.shell.jetty.JettyLauncher (using a wrapped Jetty 9) is still used, which is what it sounds like you want anyway. This will change in the future, see https://github.com/gwtproject/gwt/issues/10057 and linked issues, If you're interested in something newer than the default Jetty 9, also see https://groups.google.com/g/google-web-toolkit/c/3dSoHpHD5jY/m/faAeQeJ-AwAJ and https://groups.google.com/g/google-web-toolkit-contributors/c/7jvGVaiSUdI. Note that Jetty 9 sometimes doesn't behave nicely when it tries to scan your classpath - if it finds something that it can't understand while looking for annotations, it will break. This will result in an error something like java.lang.IllegalArgumentException: Unsupported class file major version 64 at org.objectweb.asm.ClassReader.<init>(ClassReader.java:199) at org.objectweb.asm.ClassReader.<init>(ClassReader.java:180) at org.objectweb.asm.ClassReader.<init>(ClassReader.java:166) at org.objectweb.asm.ClassReader.<init>(ClassReader.java:287) at org.eclipse.jetty.annotations.AnnotationParser.scanClass(AnnotationParser.java:932) at org.eclipse.jetty.annotations.AnnotationParser.parseDir(AnnotationParser.java:734) ... 6 more The workaround discussed at https://github.com/gwtproject/gwt/issues/9433#issuecomment-250104877 may help here. #3, nothing special should be required - besides the wrong instance passed to -server, what errors are you seeing? Re your note: you should not need to deploy a complete war to tomcat for local development - the best way to think about this is "If I wasn't using GWT, how would I want to debug my server", then amend that slightly to permit SDM to change files in the same sort of way that you would either manually edit JS/HTML or you'd use a tool like npm/etc. On Sunday, March 23, 2025 at 3:23:07 AM UTC-5 [email protected] wrote: > Hello! > > I am following your conversation because i am working on same issues : > > Migrating GWT/GXT project to GWT 2.10 + Java 11 + Jetty 9 > > *Initial Context on Legacy project using:* > > - > > GWT 2.8.2 > - > > GXT 2.3.1a-gwt22 > - > > Embedded Jetty > - > > Java 8 > > *Migration Goal* > > Update the project to use: > > - > > Java 11 > - > > GWT 2.10.1 > - > > Jetty 9 > - > > A custom-built GXT version compatible with GWT 2.10 > > *Steps Already Completed * > > 1. GXT Recompilation and Installation > > - > > Cloned the GXT 2.3.1a sources. > - > > Adapted the code to compile with GWT 2.10.1. > - > > Successfully built gxt-main-2.3.1a-gwt2.10.jar. > - > > Installed it locally using: > > > 2. Maven Configuration Updated > > - > > Switched to Java 11 using maven.compiler.source and target. > - > > GWT updated to version 2.10.1. > - > > Added the locally installed GXT dependency > > 3. GWT Module Inheritance Added > 4. GXT Verification > > - > > Confirmed GXT.gwt.xml is present inside the JAR (jar tf checked). > - > > JAR added to the Eclipse launch configuration (Run Configurations > > Classpath). > > Jetty Configuration Jetty 9 Already in Use > > - > > Version confirmed: 9.4.52.v20230823 (via mvn dependency:tree). > - > > Dependencies have <scope>compile</scope> (not provided). > - > > jetty-server-9.4.52.v20230823.jar appears in the Eclipse classpath. > > > *Current Blocking Issues* > > 1. GXT Not Found at Runtime > > When launching GWT DevMode: Unable to find > 'com/extjs/gxt/ui/GXT.gwt.xml' on your classpath > > Despite: > > - > > The file being present in the JAR. > - > > The JAR being listed in the Run Configurations > Classpath. > - > > Proper inheritance in the .gwt.xml file. > > 2. Jetty Server Class Not Found > > Tried using the argument: > > -server org.eclipse.jetty.server.Server > > *ClassNotFoundException: org.eclipse.jetty.server.*Server > > Even though the JAR is present in the classpath, and Jetty 9 is confirmed > to be in use. > > *So i need to understand* > > 1. > > Why is GWT DevMode (or CodeServer) unable to > find com.extjs.gxt.ui.GXT.gwt.xml, even though it is present and properly > declared? > 2. > > How can I resolve > the ClassNotFoundException for org.eclipse.jetty.server.Server, despite > Jetty 9 being correctly added? > 3. > > Are there any special configurations or recommendations for running > GWT 2.10 with Jetty 9 and Java 11 in Eclipse? > > *Important note:* I do *not* want to switch to a Tomcat 9 deployment (war > packaging) as a workaround. The current state of the project makes the > packaging and deployment process extremely slow — over *one hour* just to > build and deploy. Therefore, I need a solution that works using GWT Super > DevMode and embedded Jetty > > Thanks in advance for any help or suggestions. > > > __wejden > > > > Le mercredi 12 mars 2025 à 17:32:47 UTC+1, Jens a écrit : > > As Colin said you can use @WebServlet and enable configuration via > annotation scanning in your servlet container. However if your application > is large then scanning might slow your deployment down. If deployment time > is not a concern then it is the easiest solution. There are additional > annotations for other classes you normally add to your web.xml. > > If you don't like class scanning during deployment time you can write an > annotation processor that picks up all these @WebServlet annotated servlets > and generates a class that registers them using the ServletContext API. > Then you use that generated class in a custom ServletContextListener > implementation to register everything. That ServletContextListener would > then be the only entry in your web.xml. Alternatively, if you use Jetty as > servlet container you can use Jetty's quickstart module to let it generate > a web.xml by scanning your code once (as part of the build process). > > -- J. > > > -- 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 [email protected]. To view this discussion visit https://groups.google.com/d/msgid/google-web-toolkit/be056267-f31e-4a91-8233-61baeeb0a230n%40googlegroups.com.
