Session Object

HttpSession can hold the conversational state across multiple requests. In other words, for an entire session with that client.

Step 1 Create New Dynamic Web Project

Step 1.1 Create New Project

Go to File->New->Others… Select Dynamic Web Project under Web category then click Next. Type ServletDemo or whatever name you want in the Project name field.

Step 1.2 Configure Target Runtime

  • Click New Runtime… button under Target Runtime.
  • Select Apache Tomcat v7.0. Click Next.
  • Click Browse button to specify Tomcat Server installation directory. The select the folder then click Ok.
  • Click Installed JREs… button to add/remove or edit JRE definition. Remove existing one; then click Add button to configure new one. Select Standard VM; then click Next. Click Directory button to select the root folder of JDK installation. Select the folder then click Ok. Click Finish.
  • Check the JDK then click Ok.
  • Change JRE to the JDK then click Finish.
  • Click Finish the finish the project creation.

Step 2 Create The First Servlet  Class

  • Right click to the project, select New -> Servlet from the menu.
  • In Java package, enter info.java.tips.servlet.
  • In Class Name, enter SessionObjectDemo.
  • Click Finish.
  • Implement doGet() method.

Eclipse IDE will generate some boilerplate code. We just remove all unnecessary one and keep only doGet method and add some code for it. You can change the servlet URL or keep the suggested value from Eclipse.

This servlet set 2 attributes:

Session scope attribute:

And request scope attribute

Step 3 Create The Second Servlet

The code is basically the same as the first one; but the code to set request and session attributes are removed.

Step 4 Clean & Build

Clean & build the project to clean old classes file (if any) & force the IDE to recompile java code.

  • Go to Project on menu bar; select Clean…
  • Select Clean all projects (default)
  • Click Ok to proceed clean & build.

Step 5 Configure Tomcat

Select Servers window; in case it’s not there, go to Windows -> Show View-> Others… Select Server -> Servers; then click Ok.

If this is the first time you are creating a server, in the Servers area you will see a link as No servers are available click this link to create a new server. Click the link.

Define a New Server window will be opened, In Select the server type. Select Apache -> Tomcat v7.0 Server. Then click Finish.

Step 6 Deploy The Application

  • Right click to the Tomcat Server select Add and Remove.
  • Move the application (ServletDemo) from Available column to Configured. Then click on Finish to deploy it to tomcat server.

Step 7 Start Tomcat Server

Right click on the tomcat server and choose Start or simply click on the green start icon to start the server.

Step 8 Run The Servlet

We assume that you install tomcat on default port (8080) and project name is ServletDemo. Open web browser and type:

Run the first servlet

http://localhost:8080/ServletDemo/SessionObjectDemo

Output

Run the second servlet

http://localhost:8080/ServletDemo/SessionObjectDemo2

The request attribute is gone (out of scope) as this is the different request; and it shows null. But the session attribute is still available.

Clear web browser session or simply open another web type such as chrome (let say if you are using firefox). Then run the second servlet again:

Note: If you’ve already created a dynamic web project & tomcat server up & running. You can skip step 1 – create new project. And to deploy & run the servlet; follow the below steps:

  • Stop the tomcat server
  • Clean & build the project to re-compile the application
  • Start the tomcat server
  • Open web browser and run the URL.