servlet-async: How to Write an Asynchronous Servlet
Author: Christian Sadilek
What is it?
This is a sample project showing the use of asynchronous servlets.
It shows how to detach the execution of a resource intensive task from the request processing thread, so the thread is free to serve other client requests. The resource intensive tasks are executed using a dedicated thread pool and create the client response asynchronously.
All you need to build this project is Java 6.0 (Java SDK 1.6) or better, Maven 3.0 or better.
The application this project produces is designed to be run on JBoss AS 7 or JBoss Enterprise Application Platform 6.
NOTE: If you are running JBoss AS 7 this project retrieves artifacts from the JBoss Community Maven repository, a superset of the Maven central repository. If you are running JBoss Enterprise Application Platform 6, follow the instructions in the README file at the root of you quickstart folder to configure a local Maven repository.
With the prerequisites out of the way, you're ready to build and deploy.
Deploying the application
First you need to start JBoss AS 7 or JBoss Enterprise Application Platform 6. To do this, run
or if you are using windows
To deploy the application, you first need to produce the archive to deploy using the following Maven goal:
You can now deploy the artifact to JBoss AS by executing the following command:
This will deploy
The application will be running at the following URL http://localhost:8080/jboss-as-servlet-async/.
To undeploy from JBoss AS, run this command:
You can also start JBoss AS 7 and deploy the project using Eclipse. See the JBoss AS 7 Getting Started Developing Applications Guide for more information.