Search code examples
javaserverclientapplication-serverapplication-client

What is the purpose of an Application Server Application-Client?


As the title mentions, what is the purpose of an Application Server Application-Client?

Scouring the web, there really isn't much explanation of what an Application Client for an Application Server is and what its' purpose is for.

From what information I can glean, an application client is like a browser in that they both access an application hosted on an application server, but the application client provides a better (graphical?) interactivity? Also it creates a container that allows access to an application server's resources, or it's Java EE resources?

But I still really don't understand how it all fits together or what it is exactly.


Solution

  • Simplify this, the client of some a A element, is some other element, that uses the A element to do something (e.g. one class object use other to do something)

    Application Client is simply other application, class or component that uses, invokes or executes methods. If you wrote some class with some methods you can use this class as a part of other class. And then the second class will be a client of the first one. You can develop some EJB component on application server in JavaEE and you can create standalone JavaSE application which will invoke methods from your component deployed on server. And then this standalone JavaSE application is your client for your component.

    ... an application client is like a browser in that they both access an application hosted on an application server, but the application client provides a better (graphical?) interactivity?

    Not only browsers can be client applications. In JavaEE (Enterprise Edition) you can develop components and deploy them to the application server. Components contains special classes with only business methods (i.e methods that do something concrete). You provide some interface for your developed components on application server. Thanks to this interface client applications can invoke methods in components. Your client application that can use this component through provided interface can be JavaSE application, Web Servlet, JSP or other components.

    You can read section 1.3.3 Java EE Clients to get further details from below tutorial: