GWT - Still Active ?

3,528 views
Skip to first unread message

Learner 1980

unread,
May 28, 2019, 2:03:01 AM5/28/19
to GWT Users
hi guys,
i don't see or hear much about GWT.
Google has also come up with Flutter which I believe would compete with React.

With all these new frameworks coming up and for which the community seems quite active, is GWT still alive?
Is there any plan to release any new versions of GWT?

thanks!

Ahmad Bawaneh

unread,
May 28, 2019, 2:39:02 AM5/28/19
to GWT Users
we had this question the other day but it was in the other form `Is GWT dead`

TLDR: Yes it is still active and we made huge progress as a community toward GTW 3.0, we now have a working j2cl maven plugin, and we have lots of GWT2 ported modules working already in j2cl/gwt3. the ecosystem is growing really nicely.

answers can be found here

Craig Mitchell

unread,
May 29, 2019, 8:54:05 PM5/29/19
to GWT Users

Nick Wilton

unread,
May 29, 2019, 9:24:31 PM5/29/19
to google-we...@googlegroups.com
It would be good to have an approximate public release window for GWT 3.0 from the community. Will it happen in 2019?

Also any plans to move release cadence for GWT to match Java’s 6-monthly cycles?

-Nick

On 30 May 2019, at 10:54, Craig Mitchell <ma...@craig-mitchell.com> wrote:

--
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-tool...@googlegroups.com.
To view this discussion on the web visit https://groups.google.com/d/msgid/google-web-toolkit/7ab94297-5dd1-4990-88ee-3bac2fbaec94%40googlegroups.com.

Bob Lacatena

unread,
May 30, 2019, 3:33:30 PM5/30/19
to GWT Users
I just posted this elsewhere, but as this thread has more current responses, I'm reposing it in the hopes that someone will read it:


GWT is suffering from a very serious publicity debacle.  I'm actively doing GWT development, and regretting every moment of it right now.  Years ago I loved GWT.  Today, I'm dreading it.

My biggest problem for the past year has been the fact that unless one hunts for threads like this, GWT does appear to be dead.  I don't know what the developers are doing.  I just know there were occasional hints that something was coming (a year ago), with not a sound since then.

Update gwtproject.org!  Put a few news items on it a month, at least.  Let people know you are working.  No matter how good your work is, more and more developers like me are going to abandon it as time drags on.

Or create a GWT 3.0 blog.  Something.  Anything other than the black hole of silence you have now.

I'm also very concerned that with the rewrite, every bit of code I'm working on now will be useless.  GWT before 3.0, from a developer who uses it, was and still is a nightmare if you don't want to use every widget, as it exists, out of the box, because too many of the classes use private members and methods, making them completely impossible to extend (which, I believe, is sort of the point of a lot of OOP concepts).

With GWT getting old, this is becoming painful, because GWT did cool things, like animation and date pickers and rich text editors, by brute force back when that was necessary.  Now, however, HTML5 and other things have evolved to offer better, cleaner solutions, but often it's difficult to impossible to make GWT work with those solutions, because of the private members.

I've even gotten into vicious cycles; copy the source for class X, to be able to fix it, but that requites a copy of private class Y, which requires a copy of private class Z, and on and on until I give up.

Instead, I have to "roll my own", which takes too much effort that could be spend on more productive pursuits.  I'd rather use a framework with working widgets.

I didn't start out intending this to be a rant, but the bottom line is that I like GWT, I like being able to work exclusively in one language/framework instead of four at one time (Java + Angular + TypeScript + JQuery), but as a professional who is paid to make decisions that will have a decade-long impact on my company, I am very hard-pressed not to advise my company to immediately abandon all efforts using GWT.

Put some effort into communication!  [Which should be tattooed on the backs of every software engineer's hands, because as a species they seem to be oblivious to the concept.]

I am somewhat heartened by the existence of this thread, but I can't wait 6 months for GWT 3.0, only to find out it's not backwards compatible with much of our efforts, and it's lost so much popularity in the wild that it's considered a death-mark on one's resume.

- Bob

Michael Joyner

unread,
May 30, 2019, 4:32:22 PM5/30/19
to google-we...@googlegroups.com
Ideally, twice yearly release of "stable", with most recent appropriate patches applied, such as "2.201904" and "2.201910" or similar tagged releases would definitely help there.
--
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-tool...@googlegroups.com.

Craig Mitchell

unread,
May 30, 2019, 8:44:24 PM5/30/19
to GWT Users
With GWT getting old, this is becoming painful, because GWT did cool things, like animation and date pickers and rich text editors, by brute force back when that was necessary.  Now, however, HTML5 and other things have evolved to offer better, cleaner solutions, but often it's difficult to impossible to make GWT work with those solutions, because of the private members.

Personally, I love GWTs Java to JS compiler, and its seamless RPC ability.  As you mentioned, its widget library is now dated, and not great to work with.  I usually keep my use of it to a minimum, instead, creating my own components, or using an off the shelf solution.  Eg:  https://gwtmaterialdesign.github.io/gwt-material-demo/


Put some effort into communication! 

Yes.  That would be nice.  :-)

Good rant.  I love GWT, and still hold out a lot of hope for GWT 3.0.

Off topic:  I do wonder how web assembly (WASM) is going to impact GWT, especially if it gets garbage collection, and therefore makes Java to WASM compilation possible.

Ahmad Bawaneh

unread,
May 31, 2019, 4:04:09 AM5/31/19
to GWT Users
This is one of the things that are preventing us from releasing 2.9 
https://groups.google.com/forum/#!topic/google-web-toolkit-contributors/VN4ATVrLrTA

any help here will be appreciated.
To unsubscribe from this group and stop receiving emails from it, send an email to google-web-toolkit+unsub...@googlegroups.com.

Ahmad Bawaneh

unread,
May 31, 2019, 4:35:21 AM5/31/19
to GWT Users
I also posted a reply here for anyone reading this thread instead of the other one

https://groups.google.com/d/msg/google-web-toolkit/-6KuZjHFD5c/yxouo-PHAwAJ

Edson Richter

unread,
May 31, 2019, 9:23:16 AM5/31/19
to GWT Users
Yep. Seems dead since we could not debug anymore. Superserver never worked - and previous "classical" debug stopped working. Even Google is migrating projects out of gwt.
Rpc is a nightmare in large apps.
So we are hiring developers to rewrite ui into Angular2+.
Hoping for a better future.
Just my -2c.

Jamal Romero

unread,
May 31, 2019, 10:41:27 AM5/31/19
to GWT Users
Out of curiosity, what would prevent someone still build projects based on current GWT 2.8.2 and keep using all the goodies? I think as of 2.8.2 it is future proof especially with a shift to jsinteop included in current release version? People even with current version took their own path and modernized part of GWT like the excellent gwt material & domino ui kit.

Ahmad Bawaneh

unread,
May 31, 2019, 11:16:53 AM5/31/19
to GWT Users
Even though it is still working for us SDM works perfectly in large projects long as your code isnt really too coupled, and regarding RPC you might take a look here 
https://www.slideshare.net/gwtcon/in-defense-of-gwtrpc-by-colin-alworth/

currently i am using domino-rest which works for me.

I am really not sure what dead means these days.

Peter Donald

unread,
May 31, 2019, 11:27:45 PM5/31/19
to GWT Mailing List
On Fri, May 31, 2019 at 10:44 AM Craig Mitchell <ma...@craig-mitchell.com> wrote:
Off topic:  I do wonder how web assembly (WASM) is going to impact GWT, especially if it gets garbage collection, and therefore makes Java to WASM compilation possible.

That is the biggest risk IMO. When we did our analysis to decide on whether to commit to J2CL/GWT3.x for the next 10 years or not this was the only real risk that we found (or that Typescript gets a lot better backend).

WebAssembly is still a way off but projects like https://github.com/i-net-software/JWebAssembly do seem to be something to watch


--
Cheers,

Peter Donald

Andrew Buck

unread,
Jun 1, 2019, 3:51:55 PM6/1/19
to GWT Users
GWT is not dead! It's simply suffering from PR misunderstanding. People think that you have to use the old widget system to use GWT, but you don't. Just use Elemento instead of widgets and REST calls instead of RPC.  Regardless of what happens with GWT 3, using GWT 2.8 is future proof since it supports JsInterop. GWT remains the most robust system to develop web apps with. Also, combined with J2ObjC, it remains the only way to write 100% native apps for web, iOS, and Android and share 70% of the code between all platforms. Other systems that let you share code don't produce truly native apps.

Douglas de Oliveira Mendes

unread,
Jun 1, 2019, 6:19:40 PM6/1/19
to google-we...@googlegroups.com
Ain't dead for me! Using it every day quite a lot. I still think it's a great option if you have tons of widgets, panels, tabs... I see GWT basically as an easier to distribute Java Web Start-like plataform.

I'm sitcking with RPC because it maximizes client-server code reuse. DTOs, Enums, Exceptions, utility classes... We have Java and Groovy on the server side. I believe RPC maximizes the strenghts of this setup. Some colleagues dislike the calls being serialized. But I think if that's the problem they'd just go after replacing the serialization of the RPC mecanism to a JSON based one (maybe this "jackson" thing someone mentioned?) instead of rewriting the RPCs into anything else. The server side is ours, we write it in Java so let's stick with RPC, don't you think?

I would like to use validation on the DTOs keeping them as POJOs (or something like, closest to pure Java), but the GWT website scared me off regarding that [1]. Another desire I have is avoiding interfaces having to extend "RemoteSevice". Should be enough to write some XML or whatever to tell which services are exposed, hence keeping the interfaces with no dependencies to GWT.

As for widgets, we mostly use Sencha GXT's components.

I'm not sure if default methods in interfaces are already available. Would be nice to have.

I also miss debugging but I'm not sure if GWT should take any blame or just my laziness for setting it back up.

[1] "CAUTION: Validation API is unmaintained and will be moved out of GWT SDK into a separate project after GWT 2.8."  http://www.gwtproject.org/doc/latest/DevGuideValidation.html

Douglas


--
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-tool...@googlegroups.com.
To view this discussion on the web visit https://groups.google.com/d/msgid/google-web-toolkit/dfe83c33-bdee-4dd8-ba78-7db137a81333%40googlegroups.com.

Edson Richter

unread,
Jun 1, 2019, 6:22:09 PM6/1/19
to GWT Users
This is my opinion (from a person with more than 30 years of experience in software enginnering), and I respect every other persons opinion - I'll just not put my eggs on this basket for another 8 years "just to see if it will get better".
Last year I had big issue with dates, because GWT has outdated DST tables (backend had correct dates, front end show everything one hour earlier!!!). This is just one little big problem for enterprise apps. I've asked support for this issue here, without any result (if someone had pointed me how to fix, I'll contribute code back to the project!). Finally, I had to write my own DST table and use "creativity" to overcome this "bug".
Not having support is also a big issue.
Not being able to debug the code anymore is another one.
More and more, GWT will get those "pieces" failing... and finally, it won't be usable anymore.

Regards,

Edson

Ahmad Bawaneh

unread,
Jun 1, 2019, 9:01:01 PM6/1/19
to GWT Users
On Sunday, June 2, 2019 at 1:22:09 AM UTC+3, Edson Richter wrote:
This is my opinion (from a person with more than 30 years of experience in software enginnering), and I respect every other persons opinion - I'll just not put my eggs on this basket for another 8 years "just to see if it will get better".
Last year I had big issue with dates, because GWT has outdated DST tables (backend had correct dates, front end show everything one hour earlier!!!). This is just one little big problem for enterprise apps. I've asked support for this issue here, without any result (if someone had pointed me how to fix, I'll contribute code back to the project!). Finally, I had to write my own DST table and use "creativity" to overcome this "bug".
Not having support is also a big issue.

I can understand your frustration regarding this, but i wont call GWT just because of this, specially that i know the CLDR in gwt have been updated to the recent data, we still need to generate an updated DateTimeZone constants file which is delayed because the generator is not found yet at google, but we didnt stop there, and i already started a new tool to generate this file, still not finished and needs more tests and review, but my point is that updating GWT was slow because we had to go through the gateways of google, but now as a community we can do things faster, all we ask is that the community should also help, it is not in the hands of google anymore, it is in our hands.
 
Not being able to debug the code anymore is another one.

Can we blame GWT on this, the old dev mode have been deprecated for a long time and is not even supported anymore by any of the browsers, but in the same time browsers are getting better at debugging javascript, and this is what we are actually do, i always debug in the browsers, and i dont think that any other Js framework will give you any better options in this regards. in my case i still can debug my code as java code in the IDE since all my business logic resides in presenters that has nothing to do with gwt ;-).
 
More and more, GWT will get those "pieces" failing... and finally, it won't be usable anymore.

I am not sure about this, instead of saying falling i would say migrated or ported, we are already working on the next gwt version and one really good thing we are doing is making sure that any migrated or ported module from gwt2 should work in both gwt2 and gwt3, and so for we have already ported may modules and there is no need to wait for next gwt version to start using them , as you can start using then right now and mix them with what ever you use from gwt2 and be ready for the next gwt version.

Ahmad Bawaneh

unread,
Jun 1, 2019, 9:09:57 PM6/1/19
to GWT Users


On Saturday, June 1, 2019 at 10:51:55 PM UTC+3, Andrew Buck wrote:
GWT is not dead! It's simply suffering from PR misunderstanding. People think that you have to use the old widget system to use GWT, but you don't. Just use Elemento instead of widgets and REST calls instead of RPC.  Regardless of what happens with GWT 3, using GWT 2.8 is future proof since it supports JsInterop. GWT remains the most robust system to develop web apps with. Also, combined with J2ObjC, it remains the only way to write 100% native apps for web, iOS, and Android and share 70% of the code between all platforms. Other systems that let you share code don't produce truly native apps.



I agree with you, people should start thinking of gwt as just the compiler, they dont need to use widgets to call it GWT nor any of the gwt built in modules, there is a lot of modern libs out there that really competes, i built domino-ui without using anything related to widgets, all i am using is elemental2, elemento, and few of the ported gwt modules, and it works with both gwt2 and j2cl -at least i have a branch working with j2cl- not only this one but a lot more of good tool like my new domino-rest and what about Vue-gwt. gwt is really just the compiler and the ecosystem around it is really amazing and it is more amazing of what you can do with it.

Ahmad Bawaneh

unread,
Jun 1, 2019, 9:22:22 PM6/1/19
to GWT Users


On Sunday, June 2, 2019 at 1:19:40 AM UTC+3, Douglas de Oliveira Mendes wrote:
Ain't dead for me! Using it every day quite a lot. I still think it's a great option if you have tons of widgets, panels, tabs... I see GWT basically as an easier to distribute Java Web Start-like plataform.

I agree specially when you have lots of java developer in your workplace, it is easier for them to start with gwt than other framworks, 
 

I'm sitcking with RPC because it maximizes client-server code reuse. DTOs, Enums, Exceptions, utility classes... We have Java and Groovy on the server side. I believe RPC maximizes the strenghts of this setup. Some colleagues dislike the calls being serialized. But I think if that's the problem they'd just go after replacing the serialization of the RPC mecanism to a JSON based one (maybe this "jackson" thing someone mentioned?) instead of rewriting the RPCs into anything else. The server side is ours, we write it in Java so let's stick with RPC, don't you think?

I would like to use validation on the DTOs keeping them as POJOs (or something like, closest to pure Java), but the GWT website scared me off regarding that [1]. Another desire I have is avoiding interfaces having to extend "RemoteSevice". Should be enough to write some XML or whatever to tell which services are exposed, hence keeping the interfaces with no dependencies to GWT.

I think you should take a look at domino-rest and i promise you wont regret it, it is JaxRs compatible, works flawlessly in both gwt2 and gwt3/j2cl, you can use the same generated client in both client and server, interfaces are very clean, serialization is based on dominon-jackson so you can use DTOs with enums, collections, arrays ..etc. and i know that @Frank already used it to completely replace restyGwt from one of his apps. 
 

As for widgets, we mostly use Sencha GXT's components.

if you use lots of widgets i suggest you take a look at domino-ui you wont regret it i promise again:-). 


I'm not sure if default methods in interfaces are already available. Would be nice to have.

Java8 syntax is supported in gwt-2.8.2, i use default methods in interfaces all the time and they are pretty useful.
 

I also miss debugging but I'm not sure if GWT should take any blame or just my laziness for setting it back up.

[1] "CAUTION: Validation API is unmaintained and will be moved out of GWT SDK into a separate project after GWT 2.8."  http://www.gwtproject.org/doc/latest/DevGuideValidation.html

Next in my new libs queue is domino-validation stay tuned for it. :-)
 


Douglas


On Sat, Jun 1, 2019 at 4:52 PM Andrew Buck <anb...@gmail.com> wrote:
GWT is not dead! It's simply suffering from PR misunderstanding. People think that you have to use the old widget system to use GWT, but you don't. Just use Elemento instead of widgets and REST calls instead of RPC.  Regardless of what happens with GWT 3, using GWT 2.8 is future proof since it supports JsInterop. GWT remains the most robust system to develop web apps with. Also, combined with J2ObjC, it remains the only way to write 100% native apps for web, iOS, and Android and share 70% of the code between all platforms. Other systems that let you share code don't produce truly native apps.



On Friday, May 31, 2019 at 8:27:45 PM UTC-7, Peter Donald wrote:
On Fri, May 31, 2019 at 10:44 AM Craig Mitchell <ma...@craig-mitchell.com> wrote:
Off topic:  I do wonder how web assembly (WASM) is going to impact GWT, especially if it gets garbage collection, and therefore makes Java to WASM compilation possible.

That is the biggest risk IMO. When we did our analysis to decide on whether to commit to J2CL/GWT3.x for the next 10 years or not this was the only real risk that we found (or that Typescript gets a lot better backend).

WebAssembly is still a way off but projects like https://github.com/i-net-software/JWebAssembly do seem to be something to watch


--
Cheers,

Peter Donald

--
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+unsub...@googlegroups.com.

Andrew Buck

unread,
Jun 2, 2019, 2:01:04 PM6/2/19
to GWT Users
Debugging of both the server and client code works great. I'm not sure why it doesn't work for you. Client side debugging is done in the browser console using source maps that are automatically generated by the GWT compiler.

Edson Richter

unread,
Jun 3, 2019, 9:12:49 AM6/3/19
to GWT Users
Well, let's name few problems here:

1) Source maps: I don't know why, but Chrome can't find them. I've tried everything (I swear, I followed step by step every tutorial in earth - it just wont work. It may be because our folder structure that is bit more complex than those simple examples).
2) So, I'll forget and leave Java sources, and try to debug Javascript code. I've configured GWT compiler to produce "pretty", "non-obfuscated code". The generated javascript files are so big that chrome can't open it in developer mode. I just open an "empty" window. Nothing else.

Just to let you know, I'm using NetBeans - but this has nothing to do with the IDE I use - I'm just talking about debug javascript code.

I do consider myself a experienced engineer, having worked with several languages and systems - but I can't manage to get superdevmode working at all. May be just my system is currently too large.

Regards,

Edson

Peter Donald

unread,
Jun 3, 2019, 8:25:41 PM6/3/19
to GWT Mailing List
I can see why you would be frustrated ... and the GWT documentation is not particularly good. For us superdev+browser debugging mode "just works" as long as you do not change the linker. We don't have a massive app (~700K lines of client-side java source code across 37 directory trees + lots different jars) and generally we don't embed assets in javascript (which can degrade performance and increase js size).

These days we tend to debug in the browser rather than the IDE as historically IntelliJ struggled debugging large browser apps (although I believe this is no longer true) but we now find the browser debugger nicer to work with as it has all the other browser goodies.

I would recommend starting with a very simple app and seeing if you can get source maps and debugging working with that and then work from there. https://gitter.im/gwtproject/gwt is usually helpful and someone else was helped with this recently...

--
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-tool...@googlegroups.com.
To view this discussion on the web visit https://groups.google.com/d/msgid/google-web-toolkit/6f3dfaf6-ab6e-400a-a154-35b3c386422d%40googlegroups.com.


--
Cheers,

Peter Donald
Reply all
Reply to author
Forward
0 new messages