As a user and non-contributor, I would vote for bumping up
versions (Java 7 to 8, Jetty to 9.4). The move to Java 8 is
something I would have to do if I had any Java 7 projects left.
And Jetty has lots of used features that I'm not hearing proposals
for replacement for.
--
You received this message because you are subscribed to the Google Groups "GWT Contributors" group.
To unsubscribe from this group and stop receiving emails from it, send an email to google-web-toolkit-co...@googlegroups.com.
To view this discussion on the web visit https://groups.google.com/d/msgid/google-web-toolkit-contributors/622544a8-85d5-41c5-b8da-7a733667eb89n%40googlegroups.com.
To view this discussion on the web visit https://groups.google.com/d/msgid/google-web-toolkit-contributors/c317be1c-55d9-f255-0b0f-e05da19240ee%40gmail.com.
To view this discussion on the web visit https://groups.google.com/d/msgid/google-web-toolkit-contributors/CAEayHEOAgJFjDiacN7w31ASa3pg8bL%2B0mEOc1Q7Sy1cdCtTd4w%40mail.gmail.com.
Our developers are using "Google Plugin for Eclipse" from which they can start DevMode for any of our GWT application with a single step.If we wanted to use a CodeServer we would have to perform more steps. e.g. compile the code, start a server manually, deploy the app to the server, start the code server, start a browser then point the browser to the code server etc.I am hoping that the difference is obvious.
To view this discussion on the web visit https://groups.google.com/d/msgid/google-web-toolkit-contributors/CAA5%3Digxoak0nwLOw%2B%3Dtyy0UXNpSaqp4_yL5DJsPM_4_jADEg4Q%40mail.gmail.com.
This is something I have been pushing my teams to do.We keep out GWT apps very simple, just "CRUD" so that they can run in DevMode but also de-couple from business logic and background tasks as much as possible, a microservices approach.If that is not enough we equip the GWT app strictly with front-end code, we keep the back-end services in a separate application and bridge the two with a remote API (e.g. REST+JSON).I believe this is what is implied by "pure GWT frontend"On Tuesday, 13 April 2021 at 20:14:16 UTC+1 t.br...@gmail.com wrote:What do you mean by "pure GWT frontend" ? Do you need servlets ? Or serving only static files would be OK?Because the problem is with server side code.
To view this discussion on the web visit https://groups.google.com/d/msgid/google-web-toolkit-contributors/CAEayHEPYzJ49Ch11AFnREySWf%2BQKDEtCrw4jLy4iLzxnQ6fz-Q%40mail.gmail.com.
--
You received this message because you are subscribed to the Google Groups "GWT Contributors" group.
To unsubscribe from this group and stop receiving emails from it, send an email to google-web-toolkit-co...@googlegroups.com.
To view this discussion on the web visit https://groups.google.com/d/msgid/google-web-toolkit-contributors/CAGHNWN%2BYgug5qMirEg-6fDC1Lyj6xvsh7VHBJ4xdicq1UwPOAA%40mail.gmail.com.
To view this discussion on the web visit https://groups.google.com/d/msgid/google-web-toolkit-contributors/CAKbOjEyDaFzcK1hiKd_L4Oux1CYng1LHDsEimaXjX2jH91zdBw%40mail.gmail.com.
You received this message because you are subscribed to a topic in the Google Groups "GWT Contributors" group.
To unsubscribe from this topic, visit https://groups.google.com/d/topic/google-web-toolkit-contributors/iU9hckIab2o/unsubscribe.
To unsubscribe from this group and all its topics, send an email to google-web-toolkit-co...@googlegroups.com.
To view this discussion on the web visit https://groups.google.com/d/msgid/google-web-toolkit-contributors/e226962d-8433-2e7a-9622-353baddea646%40newsrx.com.
To view this discussion on the web visit https://groups.google.com/d/msgid/google-web-toolkit-contributors/CAEayHEOHFCL4YfWG2Gb--H3d9Amxr8BhPrwCF35QYu9RwpJKWQ%40mail.gmail.com.
--
You received this message because you are subscribed to the Google Groups "GWT Contributors" group.
To unsubscribe from this group and stop receiving emails from it, send an email to google-web-toolkit-co...@googlegroups.com.
To view this discussion on the web visit https://groups.google.com/d/msgid/google-web-toolkit-contributors/CACiKNc7nSFd9PUzHQwtgai7EZriU3EOimzBtRgRro1TQ4jfObg%40mail.gmail.com.
Vassilis - I don't use the bookmarklet. It may still work (I don't know) but it's not needed in recent GWT versions. I just refresh my browser and it recompiles automatically if anything has changed.Paul
--
You received this message because you are subscribed to the Google Groups "GWT Contributors" group.
To unsubscribe from this group and stop receiving emails from it, send an email to google-web-toolkit-co...@googlegroups.com.
To view this discussion on the web visit https://groups.google.com/d/msgid/google-web-toolkit-contributors/CAGHNWNJQdCRQ5NfRA--B7SLmxBZikc1tjfiabfX8%2BKnDWTgYOQ%40mail.gmail.com.
That's great news to hear. Is there any doc about this?
How does it know when to switch between codeserver and production code?
--
You received this message because you are subscribed to the Google Groups "GWT Contributors" group.
To unsubscribe from this group and stop receiving emails from it, send an email to google-web-toolkit-co...@googlegroups.com.
To view this discussion on the web visit https://groups.google.com/d/msgid/google-web-toolkit-contributors/CAEayHEMoy2bfbATDMstqUsmS88Zg0N8w1bYatdgwZrOYtJtbPQ%40mail.gmail.com.
Until then we shouldn't be forced to change our ways unnecessarily.
On Fri, Apr 16, 2021 at 3:12 PM Vassilis Virvilis <vas...@gmail.com> wrote:That's great news to hear. Is there any doc about this?It's been there since 2.7, *checks notes* more than 6 years ago.Either pass `-launcherDir` to CodeServer, or use DevMode, which defaults to using that (legacy DevMode has to be explicitly reenabled through -nosuperDevMode)How does it know when to switch between codeserver and production code?A stub nocache.js file is generated (overwriting your production one if you use the same dir) that will trigger a recompile on the CodeServer and load the generated script, similar to clicking the bookmarklet.What we're talking about here is more or less about removing DevMode "as we know it" that directly serves a web app following the "exploded WAR" layout, and only keeping the CodeServer; or possibly serve static files from DevMode but no longer host servlets et al.The issue here is conflicts between Jetty/DevMode and the project's server-side dependencies in the classpath (due to a project with mixed client and server code, and the fact that we have a custom WebAppClassLoader that loads from both the WEB-INF/classes+WEB-INF/lib and the classpath), and even conflicts between Jetty and the WEB-INF/lib, and of course issues with the version of ASM from GWT used by Jetty to scan the webapp classloader when it encounters module-info.class files.--Thomas Broyer
/tɔ.ma.bʁwa.je/
--
You received this message because you are subscribed to the Google Groups "GWT Contributors" group.
To unsubscribe from this group and stop receiving emails from it, send an email to google-web-toolkit-co...@googlegroups.com.
To view this discussion on the web visit https://groups.google.com/d/msgid/google-web-toolkit-contributors/16974302-ff52-4fc0-bcf7-4c25356e708en%40googlegroups.com.
--
You received this message because you are subscribed to the Google Groups "GWT Contributors" group.
To unsubscribe from this group and stop receiving emails from it, send an email to google-web-toolkit-co...@googlegroups.com.
To view this discussion on the web visit https://groups.google.com/d/msgid/google-web-toolkit-contributors/9cce0909-56fc-4804-a032-103184c05af1n%40googlegroups.com.
To view this discussion on the web visit https://groups.google.com/d/msgid/google-web-toolkit-contributors/94c5c53d-b72a-4887-a617-4d1064c7c8fan%40googlegroups.com.
During development,with "SuperDevMode"+"Jetty" and "Google Plugin for Eclipse",GWT client-side code compilation (including the nocache.js files) is done at runtime by DevMode.
Any other scenario demands that we,separately compile the GWT client-side code,separately run a servlet,separately deploy the GWT code to the server (both client-side and server-side),separately run GWT CodeServer,then run a browser,then genearate the CodeServer link etc.The complexity difference is obvious.
I hope this explains my case.
To view this discussion on the web visit https://groups.google.com/d/msgid/google-web-toolkit-contributors/4486df4d-553d-409f-b3a8-4b4887ff0b9fn%40googlegroups.com.
CAUTION -- EXTERNAL E-MAIL
CAUTION -- EXTERNAL E-MAIL - Do not click links or open attachments unless you recognize the sender.
I have just recently set this up.. with the current GWT plugin for Eclipse because I actually needed to run some JaxB servlets. I ran into problems with JaxB servlets not loading when running in embedded Jetty, but setting up CodeServer runner with a launchDir pointing to the war folder and running deploying my GWT project to Tomcat. When the Tomcat server started, it would automatically start the CodeServer.
I only saw these problems:
Restarting tomcat server without stopping CodeServer would cause multiple CodeServers to run. IE CodeServer does not check if it is already running against an existing launchDir.
I ran into classpath and compilation issues where CodeServer would not generate serializable entities for some of my classes that work fine under DevMode.
CoseServer seemed to take an extra long time to compile vs DevMode.
My project is extremely large so there are many modules, some gwt some not, somewhere between 20-30 projects altogether and Multiple GWT modules. Runs fabulously, for the most part under DevMode, but CodeServer just seems to have trouble. I am surr that this is just do to various options set differently at runtime and perhaps some classpath loading differences, but an example that shows how to run CodeServer to reproduce the effect of running under DevMode would be imperative before removing DevMode.
To view this discussion on the web visit https://groups.google.com/d/msgid/google-web-toolkit-contributors/BN3P110MB0354A199D56BBA0158B8D7E2DC4B9%40BN3P110MB0354.NAMP110.PROD.OUTLOOK.COM.
OK, I guess not many people have used this technique.
So, I will try explaining this in a different way.Indeed, DevMode runs a CodeServer itself.We have a GWT Maven project and we run it using the "DevMode" runner of "Google Plugin for Eclipse", in a single step, instead of running CodeServer and servlet container separately etc.
This starts DevMode (with internal codeserver) and a Jetty server on a given TCP port.When accessing the application from a browser, DevMode compiles the GWT client-code at runtime and delivers it to the browser (no separate codeserver, no separate servlet container etc.)>> Same with CodeServer with -launcherDir, or DevMode with -noserverThis is equivalent to DevMode without "noserver".>> What would be the workflow with DevMode serving only static files, and servlets deployed separately?The workflow would be the same, it is just the GWT client-side code wouldn't know how to access the server-side code.
To view this discussion on the web visit https://groups.google.com/d/msgid/google-web-toolkit-contributors/4ab443c9-cfea-4d63-8cfe-90311cab0c64n%40googlegroups.com.
Apologies for the confusion, I meant "GWT Eclipse Plugin" and its "DevMode" launcher.This starts DevMode without "-noserver" plus a Jetty server at a given port and an internal codeserver which compiles the GWT client-side code at runtime and delivers the generated content to the browser all with a single step.Practically our developers need only to run a DevMode launcher, no separate codeserver, no separate servlet container etc.This is what I meant when I said it is very simple and shouldn't change.It is indeed a single click.
Now, this doesn't work for GWT 2.9.0 or later, because of the classpath misalignment.gwt-dev of GWT 2.9.0 makes use of ASM 7.1 while associated Jetty uses ASM 5.0.1 (see https://github.com/gwtproject/gwt/issues/9720)
However, ASM 5.0.1 seems to be required for Java7 support.Therefore, if Java7 support is dropped then we could upgrade Jetty and keep the GWT classpath aligned with the classpath of the associated Jetty.
This would allow people to keep using the "GWT Eclipse Plugin" recipe with GWT 2.9.0+That's the point I am trying to make.I hope I am explaining this better this time.
To view this discussion on the web visit https://groups.google.com/d/msgid/google-web-toolkit-contributors/8936a38c-7bce-4351-89e5-aab0cd9ab662n%40googlegroups.com.
Perhaps I have indeed misunderstood parts of what you are trying to describe.Hand waving or not, my main objection remains, DevMode embedded Jetty support must be preserved.
Thomas, I have explained this many times already.Teams in the enterprise I work and probably many other teams worldwide are using DevMode with "GWT Eclipse Plugin" or other similar practices during development for a single click experience.You seem to be suggesting that we should all abandon such practices and start running separate CodeServer instances and servlet container instances during development which will reduce productivity.
During development,with "SuperDevMode"+"Jetty" and "Google Plugin for Eclipse",GWT client-side code compilation (including the nocache.js files) is done at runtime by DevMode.Any other scenario demands that we,separately compile the GWT client-side code,separately run a servlet,separately deploy the GWT code to the server (both client-side and server-side),separately run GWT CodeServer,then run a browser,then genearate the CodeServer link etc.The complexity difference is obvious.
What I don't understand so far, why does Jetty disturbs the whole classpath concept?
I only use devmode on the client and on the client I don't have server libs... Is it not possible just to use the needed Jetty server for GWT (I'm not sure where else do we need the Jetty libs in GWT code)?
Because actually I don't care what version of Jetty should be used in GWT... the main thing: I could run web server + code server in the same process with one execution.
Another possibility: run the Jetty for devmode in the GWT Maven plugin? So you only have the Jetty on the classpath of the Maven plugin?To show you my use case, here is an example: https://github.com/gwtboot/domino-rest-enum-date
My 2 cents,I understand very well where "Lofi" is coming from.He tries to simplify the GWT server-side by moving all the potentially conflicting classpath dependencies to a separate application.
This recipe indeed involves an extra step but it doesn't change at all the situation with "DevMode+Jetty" and the associated classpath misalignment, particularly with GWT 2.9+ while the "DevMode+Jetty+CodeServer" combination still runs in a single step.Therefore, I still vote in favor of keeping DevMode, removing support for Java7, upgrading Jety to more recent version and use of same transitive dependencies between GWT and Jetty (e.g. ASM).
FYI, if it helps anyone, I have found a workaround to the classpath misalignment issue (see https://github.com/gwtproject/gwt/issues/9693#issuecomment-822016533) which works both for GWT2.9+ and previous versions.