OK, now I understand you 😉 Yes, we always have to separate the Client and the Server part. This is also GWT best practice.
But if you are using JavaScript on browser you lose the advantages like: 1. We use *Java* as the language 2. We have the best *ecosystem* like libraries, frameworks, build system and IDEs. 3. We know best design patterns to make our apps maintainable like Dependency Injection, Mock Testing and many other just take a look at: http://bit.ly/DesignPatternsJava 4. … and if you use Java on the server-side with *Spring Framework* or *JavaEE* you have *one language* through the whole stack. So, you could reuse Validation APIs, Business Rules, Business Model, etc. from server to client. I've built this sample project: https://github.com/gwtboot/domino-rest-enum-date to show some reuse for Client and Server and I plan to write more articles on this topic: Dependency Injection, Mocking Test, Validation API, Business Rules - all from Server to Client. This type of reuse cannot be done if you are using JavaScript / TypeScript on the web browser... Thanks, Lofi [email protected] schrieb am Montag, 28. September 2020 um 23:20:23 UTC+2: > If the server part is a Java servlet that handles REST calls, there is no > need for GWT at all. No need to deal with JSInterop and no need to deal > with annotations, that's cleaner code! > > If you have a server that exposes a REST API, you can write the client in > anything. JavaScript is great in the browser and TypeScript improves the > coding experience while sharing direct use of JavaScript libraries. > > Running a Java client in the browser implies extra steps and > complications. First and foremost, you can't mix Java and JavaScript > libraries without wasting a lot of time with compatibility layers. That is, > at least for me, the greatest advantage of using JavaScript in the browser. > > The number of libraries available for JavaScript outnumbers by orders of > magnitude the available libraries you can use with Java in the browser. > > Java is a very useful language, but it's not the best one for writing code > that runs in a web browser. > > Regards, > Rodolfo > > > > > > On Mon, Sep 28, 2020 at 5:55 PM [email protected] <[email protected]> > wrote: > >> I'm not sure whether I follow you... what is the difference using Java / >> GWT + REST and TypeScript + REST... The server part is the same. The web >> browser part is also the same. The difference is only the language and >> ecosystem you use on the web browser... >> >> Thanks, >> Lofi >> >> [email protected] schrieb am Montag, 28. September 2020 um 18:02:03 UTC+2: >> >>> Hi Lofi, >>> >>> I once used GWT + Electron + Materialize running with Jetty. That >>> worked, but after getting rid of GWT the code was much cleaner. >>> >>> Class com.sun.net.httpserver.HttpServer is more than enough for running >>> a Java server with REST interface on the desktop. >>> >>> Another advantage of moving away from GWT is that I don't need to work >>> with JSInterop and things that require annotations in the Java code. >>> Creating a REST servlet in plain Java is quite straightforward. >>> >>> Regards, >>> Rodolfo >>> >>> >>> >>> On Mon, Sep 28, 2020 at 12:46 PM [email protected] <[email protected]> >>> wrote: >>> >>>> Hi Rodolfo, >>>> >>>> thanks a lot for the feedbacks! >>>> >>>> TypeScript is not bad. After all it's coming from Anders Helsjberg >>>> creator of Turbo Pascal, Delphi, VisualJ++, C#. He is a great language >>>> designer... 😉 >>>> >>>> But actually you could use GWT to build an Electron app as you don't >>>> need to have a Java server for the transpiled code... or did you have >>>> something extra? >>>> *@Frankhossfeld* told me that he has done Electron app with GWT, very >>>> easy 😉 Maybe he could elaborate here... >>>> >>>> I never use GXT but I've used GWTBootstrap3 (Open-Source) and actually >>>> it was very easy to use, quite the same with using the integrated GWT >>>> widgets. Today Dmitrii has migrated *GWTBootstrap3 to Elemental2* ( >>>> https://github.com/treblereel/gwtbootstrap3). And the cool thing is >>>> that for the app devs, it doesn't change anything. You could use the same >>>> components and nothing has changed, only deep in the framework itself it >>>> uses Elemental2 instead the older technology... Maybe *@Dmitrii* could >>>> elaborate this... >>>> >>>> Thanks, >>>> Lofi >>>> >>>> >>>> >>>> [email protected] schrieb am Montag, 28. September 2020 um 12:36:03 >>>> UTC+2: >>>> >>>>> Hello Lofi, >>>>> >>>>> Java + GWT + GXT + Eclipse was my main toolkit for over a decade. When >>>>> Sencha went crazy with the price of license renewals, I started looking >>>>> for >>>>> alternatives. >>>>> >>>>> Today my toolkit has changed to Java for backend/server side, >>>>> TypeScript for client side and Visual Studio Code for code development. >>>>> Communication between Java server and TypeScript UI is handled via REST >>>>> interface. >>>>> >>>>> Now I'm free to choose any UI style I like, my code has simplified a >>>>> lot and there is a clearer separation between server and client code. >>>>> There >>>>> are no license costs and I don't have to deal with GWT and GXT, except >>>>> for >>>>> an old project I still have to maintain. >>>>> >>>>> The switch to JavaScript/TypeScript gave me a huge advantage: now I >>>>> can use ElectronJS to create cross-platform desktop apps that are >>>>> actually >>>>> web apps running on a local Java server. >>>>> >>>>> I don't regret moving away from GWT + GXT. Actually, I'm quite happy >>>>> with the refreshed coding experience. >>>>> >>>>> Regards, >>>>> Rodolfo M. Raya >>>>> >>>>> >>>>> On Thu, Sep 24, 2020 at 4:02 PM [email protected] <[email protected]> >>>>> wrote: >>>>> >>>>>> I would like to know, what are the *obstacles* for you as *Java >>>>>> developers* not using *Java as programming language for writing Web >>>>>> browser apps*. Web browser apps are client-side and *not server-side* >>>>>> Web >>>>>> apps. >>>>>> >>>>>> - Open discussion at https://bit.ly/HackerNewsTypeScriptJavaGWT >>>>>> - Article at https://bit.ly/TypeScriptVsJavaGWT >>>>>> >>>>>> I would like to know from you... Java developers... >>>>>> >>>>>> Thanks, Lofi >>>>>> >>>>>> >>>>>> -- >>>>>> 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 on the web visit >>>>>> https://groups.google.com/d/msgid/google-web-toolkit/b099f262-5a83-4a1e-83d8-5cc6ef336e53n%40googlegroups.com >>>>>> >>>>>> <https://groups.google.com/d/msgid/google-web-toolkit/b099f262-5a83-4a1e-83d8-5cc6ef336e53n%40googlegroups.com?utm_medium=email&utm_source=footer> >>>>>> . >>>>>> >>>>> >>>>> >>>>> -- >>>> 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 on the web visit >>>> https://groups.google.com/d/msgid/google-web-toolkit/8dc3253a-a818-49b1-8e63-65492fb39d90n%40googlegroups.com >>>> >>>> <https://groups.google.com/d/msgid/google-web-toolkit/8dc3253a-a818-49b1-8e63-65492fb39d90n%40googlegroups.com?utm_medium=email&utm_source=footer> >>>> . >>>> >>> >>> >>> -- >>> Rodolfo M. Raya <[email protected]> >>> http://www.maxprograms.com >>> >> -- >> 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 on the web visit >> https://groups.google.com/d/msgid/google-web-toolkit/01f21223-57f0-472b-831f-a213478d426en%40googlegroups.com >> >> <https://groups.google.com/d/msgid/google-web-toolkit/01f21223-57f0-472b-831f-a213478d426en%40googlegroups.com?utm_medium=email&utm_source=footer> >> . >> > > > -- > Rodolfo M. Raya <[email protected]> > http://www.maxprograms.com > -- 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 on the web visit https://groups.google.com/d/msgid/google-web-toolkit/06eaa3dd-33bf-4545-8e85-6b22d3e3f595n%40googlegroups.com.
