HTTP session manager troubleshooting tips
Use troubleshooting tips for problems creating or using HTTP sessions with the web application hosted by WebSphere Application Server.
Here are some steps to take:
See the HTTP session problems information to see if the specific problem is described.
View the JVM logs for the application server which hosts the problem application:
- Look at the messages that are written while each application is starting. Specifically, see the messages that are written between the following two messages:
Start application: application .....................
Application started: application
- Within this block, look for any errors or exceptions containing a package name of com.ibm.ws.webcontainer.httpsession. If no errors are found, this result indicates that the session manager started successfully.
- The error message, SRVE0054E: An error occurred while loading session context and web application, indicates that SessionManager did not start properly for a given application.
- Look within the logs for any messages related to the Session Manager. These messages are in the format SESNxxxxE for error messages and SESNxxxxW for warning messages, and xxxx specifies the number for the error. Look up the extended error definitions in the Session Manager message table.
- View the logs for the application server which hosts the problem application:
- Look at the messages that are written while each application is starting. Specifically, see the messages that are written between the following two messages:
Start application: application .....................
Application started: application
- Within these messages related to starting the application, look for any errors or exceptions containing a package name of com.ibm.ws.webcontainer.httpsession. If none are found, this is an indication that the session manager started successfully.
- The error message, SRVE0054E: An error occurred while loading session context and web application, indicates that SessionManager did not start properly for a given application.
- Look within the logs for any messages related to the Session Manager. These messages are in the format SESNxxxxE for error messages and SESNxxxxW for warning messages, and xxxx specifies the number for the error. Look up the extended error definitions in the Session Manager message table.
See Best practices for using HTTP Sessions.
To dynamically view the number of sessions as a web application is running, enable performance monitoring for HTTP sessions. Monitoring performance provides information to help determine if sessions are actually being created.
To learn how to view the HTTP session counters as the application runs, see Monitoring performance with Tivoli Performance Viewer (formerly Resource Analyzer).
- Alternatively, a special servlet can be invoked that displays the current configuration and statistics related to session tracking. This servlet has all the counters that are in performance monitor tool and has some additional counters.
- Servlet name: com.ibm.ws.webcontainer.httpsession.IBMTrackerDebug
- We can invoke this servlet from any web module that is enabled to serve by class name. For example, using default_app,
http://localhost:9080/servlet/com.ibm.ws.webcontainer.httpsession.IBMTrackerDebug
- If we are viewing the module using the serve by class name feature, be aware that this module might be viewable by anyone who can view the application. We can map a specific, secured URL to the servlet instead and disable the serve servlets by classname setting.
Enable tracing for the HTTP Session Manager component.
The following trace can help diagnose problems:
- If we do not use any persistence:
com.ibm.ws.session.*=all:
com.ibm.ws.webcontainer.srt.*=all
- If we use database persistence:
com.ibm.ws.session.*=all:
com.ibm.ws.webcontainer.srt.*=all:
WAS.j2c=all:
RRA=all:
WAS.Database=all
- If we use memory-to-memory persistence:
com.ibm.ws.session.*=all:
com.ibm.ws.webcontainer.srt.*=all:
com.ibm.ws.drs.*=allSee the MustGather sessions and session management problems in WebSphere Application Server information to learn more about collecting required data for sessions and session management problems.
If we are using database-based persistent sessions, look for problems related to the data source the Session Manager relies on to keep session state information. For details on diagnosing database related problems see Errors accessing a datasource or connection pool
Error message SRVE0079E Servlet host not found after you define a port
Error message SRVE0079E can occur after you define the port in WebContainer > HTTP Transports for a server, indicating that we do not have the port defined in the virtual host definitions. To define the port,
- On the administrative console, go to Environment > Virtual Hosts > default_host> Host Aliases> New
- Define the new port on host "*"
The application server gets EC3 - 04130007 ABENDs
To prevent an EC3 - 04130007 abend from occurring on the application server, change the HTTP Output timeout value. The custom property ConnectionResponseTimeout specifies the maximum number of seconds the HTTP port for an individual server can wait when trying to read or write data. For instructions on how to set ConnectionResponseTimeout, see the topic HTTP transport channel custom properties.
If these steps do not address the problem, check to see if the problem has been identified and documented by looking at the available online support (hints and tips, technotes, and fixes). If we do not find your problem referenced on this site, contact IBM support.
For current information available from IBM Support on known problems and their resolution, see the IBM Support page.
IBM Support has documents that can save you time gathering information needed to resolve this problem. Before opening a PMR, see the IBM Support page.
Related concepts
Best practices for using HTTP sessions Sessions
Related tasks
Configure transport chains
HTTP session problems
Related information:
MustGather: Sessions and session management problems in WebSphere Application Server Reference topic