The J2EE specs states that :
"Application clients are first tier client programs that execute in their own JavaÂ™ virtual machines. Application clients follow the model for Java technology-based applications: they are invoked at their main method and run until the virtual machine is terminated. However, like other J2EE application components, application clients depend on a container to provide system services. The application client container
may be very light-weight compared to other J2EE containers, providing only the security and deployment services described below"
Application servers such as Websphere offer a mean to launch such an application with a custom bat ou sh program that initialise the VM with the application-client.xml file contained in the client ear file : how do one achieve this using JBoss ?
The JBoss documentation only talks about web container application is this the only possible client of jboss server components ?
I am also having a hard time figuring out how to run an application client jar included inside of EAR file. The getting started documentation only shows how to package the app, and to run it they execute an ant target which in fact doesn't run the application from the EAR but instead runs
java -jar appclient.jar in the build directory.
Does JBOSS in fact have a helper class which extracts the client JAR from the EAR and runs it, or do we have to deploy client JARs separately from the EAR?
kabir's answer is great. but two years elapsed ...
Now we have pretty nice @EJB annotation within there no the ugly JNDI-client code required. please look at http://java.sun.com/j2ee/1.4/docs/relnotes/cliref/hman1m/appclient.1m.html and "Creating a Reference to an Enterprise Bean Instance" chapter on J2ee 5 Sun's tutorial. I think that would be great to have application client container's possibilities in the best app server (aka JBoss)!!!
sorry, my english isn't glance