jakarta-eeosgiapplication-serverspringsource-dm-server

Is it worth using an application server together with rich/fat client?


I know application servers are heavily used when it comes to web applications. Here you got a thin client (browser) communicating with an application sever like tomcat or jboss.

I now took a closer look at a commercial software, which is also using an application server together with a rich/fat client. (<100 users) Here a rich client commuicates with server software running on application server (e.g. tomcat, jboss, ...)

I cannot see the benefits why somebody would use an application server together with a rich client.

What benefits has solution b over solution a?

a) Rich client <-> Simple server running in jvm

b) Rich client <-> Server running on application server like tomcat or jboss

Thanks


Solution

  • An application server with a fat client provides the same features as an application with a web app. If application servers were only useful for webapps, there would be no point in using them even for webapps: a simple Tomcat or Jetty server would be sufficient.

    The advantages of a full Java EE app server are the following ones:

    All these features are useful, whether the UI is web-based or not. If your application doesn't have any use of all these features, then you don't need an app server. If you don't need all of this, and prefer integrating various components (a transaction manager, a JPA engine, a JMS server, etc.) yourself, you could just use Spring, with or without a web container like Tomcat or Jetty.