Question

I saw a wiki page on RWT which is similar to SWT and it provides a server side programming model for Rich-Web-Client developement. When I went through this particular line of code, one doubt came up in my mind: Why do they use widget based framework for server side programming? Usually server side programming means it will be based on any pure java non ui concepts which will be helpful for unit test cases as well. What do they mean by server side programming with RWT?

Was it helpful?

Solution

RAP stands for Remote Application Platform, that is, the application is indeed running on the server but the widgets are displayed on the client. The widgets itself are half objects with a server-side and a client-side part that are synchronized over a JSON-based protocol by RAP. Widgets are created and manipulated on the server by Java code and synchronized with the client widgets.

While this approach is certainly not suitable for all types of applications, it provides a number of benefits, especially for enterprise software:

  • Java-only programming model, reuse of existing tools and knowledge
  • Code re-use through single-sourcing with SWT
  • No sensitive business data or algorithms are ever transferred to the client
  • Multi-platform: besides the Webclient, there are also native clients for iOS, and Android available

On the other hand, every user session consumes server resources, so if you expect many thousands of concurrent user sessions, RAP will not be your first choice.

You can read more about the differences between RWT and SWT in the RAP developer's guide.

Licensed under: CC-BY-SA with attribution
Not affiliated with StackOverflow
scroll top