3.1 Exception classes

Among the APIs of the Web container, this section describes the exception classes provided by Application Server.

The following table describes the exception classes of the Web container:

Table 3-1 Exception classes of the Web container

Exception nameContents
com.hitachi.software.web.dbsfo.DatabaseAccessExceptionThis exception class reports that an attempt to access the database using the database session failover functionality has failed.
When this exception is output, make sure that the database is operating properly, and there is no problem in the communication path between the database and the J2EE server. After that take the following countermeasures:
When an error occurs in the database
Take action against the cause according to the database recovery procedure.
When there is a problem in the communication path between the database and the J2EE server
Resolve the problem in the communication path. If a problem occurs in the communication path, the mutual exclusion of the database might not be released. Before restarting a business, check the disabled connections, and release the unreleased mutual exclusion.
When the database session failover functionality is disabled
Do not operate the HttpSession object in a request process where the database session failover functionality is disabled due to extension or URI.
This exception is thrown if you operate an HTTP session with a URL for which the database session failover functionality is disabled when true is specified in the webserver.dbsfo.exception_type_backcompat property of the J2EE server. If this exception occurs when there is no problem in the database or the communication path, check whether the HTTP session is operated by the URL for which the database session failover functionality is disabled.
The DatabaseAccessException class inherits the java.lang.IllegalStateException class.
HttpSessionLimitExceededException classThis exception class reports that the HttpSession object has exceeded the upper limit.
This exception is applicable to the J2EE server mode in which you can specify the upper limit for the number of HttpSession objects. This exception class is not applicable in the servlet engine mode in which you cannot specify the upper limit for the number of HttpSession objects. This exception class is also not applicable to the exception that occurs when the number of global sessions in an SFO server exceeds the upper limit.
If you are using the com.hitachi.software.web.session.HttpSessionLimitExceededException class, add the CosminexusApplication Server-installation-directory\CC\lib\ejbserver.jar to the class path, and compile the Java program.
The HttpSessionLimitExceededException class inherits the java.lang.IllegalStateException class.
com.hitachi.software.web.dbsfo.SessionOperationExceptionThis is an exception that reports the status in which you cannot operate the HttpSession.
This exception is thrown in the following cases:
  • When the database session failover disable functionality is disabled depending on the extension or URL, you cannot operate the HttpSession object in the request processing in which the database session failover disable functionality is disabled. This exception is thrown if you invoke javax.servlet.http.HttpServletRequest#getSession() or getSession(boolean create) to acquire the HttpSession object.
  • You cannot disable the HTTP session in the reference specific request of the HTTP session. If you invoke javax.servlet.http.HttpSession#invalidate() in the reference request, this exception is thrown.
  • If you perform settings to return error 503 by using the pending queue of the number of the concurrent threads for the Web application unit, you cannot create or disable the HTTP session on an error page specified in DD (web.xml). If you create an HTTP session on an error page specified in DD (web.xml) or invoke javax.servlet.http.HttpSession#invalidate(), this exception is thrown.
If this exception is thrown, check the following points:
  • If you are using disabling of the database session failover disable functionality, check whether there is a problem in the settings of the extension or URL that is disabled. If there is no problem in the settings, check the Web applications, and check whether the HTTP session operation is performed by the URL that is disabled for the database session failover disable functionality.
  • If you are using the reference specific request definition functionality of the HTTP session, check whether there is any problem in the URL of the reference request of the HTTP session. If there is no problem in the settings, check the Web application and check whether the HTTP session is disabled in the reference specific request.
  • If you have done a setting to return error 503 by using a pending queue, check whether the HTTP session is created or disabled in error page specified in DD (web.xml).
SessionOperationException class is inherited from the java.lang.IllegalStateException class.
com.hitachi.software.web.eadssfo.SessionOperationExceptionThis exception reports that the operations of HttpSession cannot be performed.
This exception is thrown in the following cases:
  • When you use the EADs session failover disable functionality, you cannot operate the HttpSession object in the request processing in which the session failover disable functionality is disabled. The system throws this exception, when you invoke javax.servlet.http.HttpServletRequest#getSession() or getSession(boolean create) for getting the HttpSession object.
  • You cannot disable the HTTP session in the reference specific requests. The system throws this exception if you invoke javax.servlet.http.HttpSession#invalidate() in the reference specific request.
Confirm the following, when this exception is thrown:
  • When you use the EADs session failover disable functionality, confirm that there is no problem with the settings of the URL pattern to be disabled. When there is no problem with the settings, check the Web application and check whether the HTTP session operates with the URL that is the target for the EADs session failover disable functionality.
  • When you use the reference specific request definition functionality, confirm that there is no problem with the settings of the URL pattern of the reference specific request. When there is no problem with the settings, check the Web application and confirm that the HTTP session is not disabled in the reference specific request.
The SessionOperationException class inherits the java.lang.IllegalStateException class.