uCosminexus Application Server

Web Container Functionality Guide

3020-3-Y05-10(E)


Contents

Notices
Summary of amendments
Preface

1. Application Server Functionality
1.1 Classification of functionality
1.1.1 Functionality that serves as an execution platform for the applications
1.1.2 Functionality for operating and maintaining the application execution platform
1.1.3 Functionality and corresponding manuals
1.2 Functionality corresponding to the purpose of the system
1.2.1 Web Container Functionality
1.2.2 JSF and JSTL functionality
1.2.3 Web server integration functionality
1.2.4 In-process HTTP server functionality
1.3 Explanation of the functionality described in this manual
1.3.1 Meaning of classifications
1.3.2 Examples of tables describing the classification
1.4 Main updates in the functionality of Application Server 09-50

2. Web Container
2.1 Organization of this chapter
2.2 Web application execution functionality
2.2.1 Deploying and un-deploying web applications
2.2.2 Notes when deploying and un-deploying web applications
2.3 JSP execution functionality
2.3.1 Overview of JSP execution functionality
2.3.2 Executing a tag file
2.3.3 Executing JSP EL
2.3.4 Storing the tag library in the J2EE applications
2.3.5 Checking the attribute name of the custom tag
2.3.6 Checking the duplication of the id attribute of the <jsp:useBean> tag
2.3.7 Implicitly importing the import attribute of the page/tag directive
2.4 JSP debug functionality
2.4.1 Mechanism of JSP debug functionality
2.4.2 Procedure of using the JSP debug functionality
2.4.3 Execution environment settings (J2EE server settings)
2.4.4 Precautions for using the JSP debug functionality
2.5 JSP pre-compilation functionality and maintaining compilation results
2.5.1 Overview of the JSP pre-compilation functionality
2.5.2 Methods for performing JSP pre-compilation
2.5.3 Examples of applying JSP pre-compilation
2.5.4 Processing during execution of JSP pre-compilation
2.5.5 Lifecycle and output destination of JSP compilation results
2.5.6 JSP Compilation results when JSP pre-compilation functionality is not used
2.5.7 Class names in JSP compilation results
2.5.8 Execution environment settings (J2EE server settings)
2.6 Functionality for setting up the default character encoding
2.6.1 Units for setting the default character encoding
2.6.2 Applicable locations and conditions for default character encoding
2.6.3 Application of character encoding during JSP pre-compilation
2.6.4 Specifiable character encoding
2.6.5 Implementation of default character encoding (For Servlet specifications)
2.6.6 Definition in the DD
2.6.7 Execution environment settings
2.6.8 Precautions related to default character encoding
2.7 Session management functionality
2.7.1 Objects managing the session information
2.7.2 Session ID format
2.7.3 Session management method
2.7.4 Deleting invalid session IDs maintained by the Web client
2.7.5 Setting the upper limit for the number of HttpSession objects
2.7.6 Adding a server ID to the session ID and Cookie
2.7.7 Definition in cosminexus.xml
2.7.8 Execution environment settings
2.7.9 Precautions related to session management
2.8 Event listener of an application
2.9 Functionality of filtering requests and responses
2.9.1 Servlet filter provided by Application Server (built-in filter)
2.9.2 Examples of recommended filter chain
2.9.3 Definition in the DD
2.9.4 Execution environment settings (Web application settings)
2.10 HTTP response compression functionality
2.10.1 Overview of HTTP response compression filter
2.10.2 Conditions for using the HTTP response compression filter
2.10.3 Executing the applications that use the HTTP response compression filter
2.10.4 Definition in the DD
2.10.5 Examples of the DD definitions
2.10.6 Execution environment settings (Web application settings)
2.11 Integrating with an EJB container
2.11.1 Enterprise Bean invocation method
2.11.2 Implementation for integrating with an EJB Container
2.11.3 Execution environment settings (J2EE server settings)
2.12 Connecting to the database
2.13 Creating threads by a Web container
2.13.1 Types and number of the threads created
2.13.2 Total number of threads created
2.14 Using the user threads
2.14.1 Availability of the functionality in user threads
2.14.2 Setting the permissions for generating user threads
2.15 Overview of controlling the number of concurrently executing threads
2.15.1 Control units of the number of threads
2.15.2 Parameters for controlling the number of concurrently executing threads
2.15.3 Number of threads used in error processing of static contents and requests
2.16 Controlling the number of concurrently executing threads in the Web container
2.16.1 Mechanism for controlling the number of concurrently executing threads (Web container)
2.16.2 Execution environment settings (J2EE server settings)
2.17 Controlling the number of concurrently executing threads in the Web application
2.17.1 Mechanism for controlling the number of concurrently executing threads (Web applications)
2.17.2 Parameters required for controlling the number of concurrently executing threads (Web applications)
2.17.3 Guidelines for the settings for number of concurrently executing threads (Web applications)
2.17.4 Definition in cosminexus.xml
2.17.5 Execution environment settings
2.17.6 Example of setting the number of concurrently executing threads and the size of a pending queue (Web application)
2.17.7 Notes on controlling the number of concurrently executing threads in the Web application
2.18 Controlling the number of concurrently executing threads in the URL group
2.18.1 Mechanism of controlling the number of concurrently executing threads (URL Group)
2.18.2 Mapping of URL patterns
2.18.3 Parameters required for controlling the number of concurrently executing threads (URL group)
2.18.4 Guidelines for setting the number of concurrently executing threads (URL group)
2.18.5 Definition in cosminexus.xml
2.18.6 Execution environment settings (Web application settings)
2.18.7 Example of setting the number of concurrently executing threads and the size of a pending queue (URL Group)
2.19 Dynamic change in the number of concurrently executing threads
2.19.1 Overview of dynamically changing the number of concurrently executing threads
2.19.2 Flow of dynamically changing the number of concurrently executing threads
2.19.3 Operations of a Web application when the number of concurrently executing threads are changed dynamically
2.19.4 Precautions related to dynamically changing the number of concurrently executing threads
2.20 Error page customization
2.21 Caching the static contents
2.21.1 Controlling the cache of static contents
2.21.2 Definition in the DD (Settings for each Web application)
2.21.3 Execution environment settings
2.22 URI decode functionality
2.22.1 Overview of URI decode functionality
2.22.2 Execution environment settings (J2EE server settings)
2.22.3 Precautions for using the URI decode functionality
2.23 Version setup functionality of Web applications
2.23.1 Overview of the version setup functionality of Web applications
2.23.2 Compiling and executing JSP files and tag files
2.23.3 Execution environment settings
2.23.4 Precautions for using the version setup functionality of Web applications
2.24 Precautions related to the Web container

3. Using JSF and JSTL
3.1 Organization of this chapter
3.2 Overview of JSF and JSTL
3.2.1 Overview of JSF
3.2.2 JSTL
3.3 JSF and JSTL functionality
3.3.1 JSF functionalities
3.3.2 JSTL functionality
3.3.3 Proprietary functionalities of Application Server
3.3.4 Collaboration with other functionalities of Application Server
3.4 Setting up the class path (setting up the development environment)
3.4.1 File storage location
3.4.2 Setting up the class path
3.5 Definition in the DD
3.5.1 Standard context parameters
3.5.2 Proprietary context parameters of Application Server
3.5.3 Servlet settings
3.6 JSF applications development flow
3.6.1 Procedure for developing JSF applications
3.6.2 Procedure for using the Bean Validation from JSF
3.7 Using log (development investigation log) for debugging
3.8 Setting up the execution environment
3.9 To output and check the troubleshooting information
3.10 Notes on using JSF and JSTL

4. Web Server Integration
4.1 Organization of this chapter
4.2 Distributing requests with the Web server (Redirector)
4.2.1 Mechanism of request distribution with the Redirector
4.2.2 User-defined file for setting the request distribution method (When the Smart Composer functionality is used)
4.2.3 User-defined file for setting the request distribution method (When the Smart Composer functionality is not used)
4.2.4 Points to be considered during Web server integration
4.3 Distributing requests by URL pattern
4.3.1 Overview of distributing requests by URL pattern
4.3.2 Types of URL patterns and priority of applicable patterns
4.3.3 Execution environment settings (When the Smart Composer functionality is used)
4.3.4 Execution environment settings (When the Smart Composer functionality is not used)
4.4 Distributing requests by the round-robin format
4.4.1 Overview of distributing requests by the round-robin format
4.4.2 Examples of request distribution in the round-robin format
4.4.3 Defining request distribution in the round robin format
4.4.4 Execution environment settings (When the Smart Composer functionality is used)
4.4.5 Execution environment settings (When the Smart Composer functionality is not used)
4.4.6 Precautions related to request distribution in the round-robin format
4.5 Distributing requests by the POST data size
4.5.1 Overview of distributing requests by the POST data size
4.5.2 Examples of distributing requests by the POST data size
4.5.3 Request distribution conditions
4.5.4 Definition for distributing requests by the POST data size
4.5.5 Execution environment settings (When the Smart Composer functionality is used)
4.5.6 Execution environment settings (When the Smart Composer functionality is not used)
4.6 Communication timeout (Web server integration)
4.6.1 Communication timeout when sending and receiving a request
4.6.2 Setting the communication timeout when sending and receiving a response
4.6.3 Setting the communication timeout
4.6.4 Setting the communication timeout when sending and receiving a request (When the Smart Composer functionality is used)
4.6.5 Setting the communication timeout when sending and receiving a request (When the Smart Composer functionality is not used)
4.6.6 Setting the communication timeout when sending and receiving a response (When the Smart Composer functionality is used)
4.6.7 Setting the communication timeout when sending and receiving a response (When the Smart Composer functionality is not used)
4.7 Specifying the IP address (Web server integration)
4.7.1 Bind address specification functionality
4.7.2 Execution environment settings (J2EE server settings)
4.7.3 Precautions for specifying the IP address in Web server integration
4.8 Error page customization with the Web server integration functionality
4.8.1 Overview of error page customization
4.8.2 Mechanism of error page customization
4.8.3 Execution environment settings (When the Smart Composer functionality is used)
4.8.4 Execution environment settings (When the Smart Composer functionality is not used)
4.8.5 Precautions related to error page customization
4.9 Viewing the top page by specifying the domain name
4.9.1 Viewing the top page by specifying the domain name
4.9.2 Execution environment settings (When the Smart Composer functionality is used)
4.9.3 Execution environment settings (When the Smart Composer functionality is not used)
4.10 Notification of gateway information to a Web container
4.10.1 Gateway specification functionality
4.10.2 Execution environment settings (When the Smart Composer functionality is used)
4.10.3 Execution environment settings (When the Smart Composer functionality is not used)
4.10.4 Precautions related to reporting the gateway information to a Web Container

5. In-Process HTTP Server
5.1 Organization of this chapter
5.2 Overview of in-process HTTP server
5.2.1 Using the in-process HTTP server
5.2.2 Functionality available in the in-process HTTP server
5.2.3 Execution environment settings (J2EE server settings)
5.3 Controlling the number of connections from the Web client
5.3.1 Overview of controlling the number of connections from the Web client
5.3.2 Execution environment settings (J2EE server settings)
5.4 Controlling the number of request processing threads
5.4.1 Overview of controlling the number of request processing threads
5.4.2 Execution environment settings (J2EE server settings)
5.5 Controlling the flow of requests by controlling the number of concurrent connections from the Web client
5.5.1 Controlling the number of concurrent connections from the Web client
5.5.2 Execution environment settings (J2EE server settings)
5.6 Controlling the flow of requests by controlling the number of concurrently executing threads
5.6.1 Overview of controlling the flow of requests by controlling the number of concurrently executing threads
5.6.2 Execution environment settings (J2EE server settings)
5.7 Request distribution with the redirector
5.7.1 Distributing requests by URL pattern
5.7.2 Response customization
5.7.3 Execution environment settings (J2EE server settings)
5.7.4 Precautions related to request distribution with the redirector
5.8 Controlling the communication with the Web client by persistent connection
5.8.1 Controlling communication by Persistent Connection
5.8.2 Execution environment settings (J2EE server settings)
5.9 Communication timeout (In-process HTTP server)
5.9.1 Overview of the communication timeout
5.9.2 Execution environment settings (J2EE server settings)
5.10 Specifying the IP address (In-process HTTP server)
5.10.1 Bind address specification functionality
5.10.2 Execution environment settings (J2EE server settings)
5.10.3 Precautions related to IP address specification in the in-process HTTP server
5.11 Controlling access by limiting the hosts that are allowed access
5.11.1 Limiting the hosts that are allowed access
5.11.2 Execution environment settings (J2EE server settings)
5.12 Controlling access by limiting the request data size
5.12.1 Limiting the request data size
5.12.2 Execution environment settings (J2EE server settings)
5.13 Controlling access by limiting the HTTP-enabled methods
5.13.1 Limiting the HTTP-enabled methods
5.13.2 Execution environment settings (J2EE server settings)
5.14 Customizing responses to the Web client using HTTP responses
5.14.1 Customizing the HTTP response header
5.14.2 Execution environment settings (J2EE server settings)
5.15 Error page customization (In-process HTTP server)
5.15.1 Error page that can be customized
5.15.2 Implementation required for customizing the error page
5.15.3 Execution environment settings (J2EE server settings)
5.15.4 Precautions related to error page customization
5.16 Notification of gateway information to a Web container
5.16.1 Gateway specification functionality
5.16.2 Execution environment settings (J2EE server settings)
5.16.3 Precautions related to reporting the gateway information to the Web container
5.17 Output of log and trace
5.17.1 Log and trace output by the in-process HTTP server
5.17.2 Customizing the access log of the in-process HTTP server

6. Implementation of Servlets and JSPs
6.1 Support range of the functionalities that are added or changed in Servlet specifications and JSP specifications
6.2 Precautions for implementing servlets and JSPs
6.2.1 Common precautions for implementing servlets and JSPs
6.2.2 Precautions for implementing servlets
6.2.3 Precautions related to the specifications that are added or changed in the Servlet 3.0 specifications
6.2.4 Precautions related to added and changed specifications in the Servlet 2.5 specifications
6.2.5 Precautions related to added and changed specifications in the Servlet 2.4 specifications
6.2.6 Precautions for implementing JSPs
6.2.7 Precautions related to added and changed specifications in the JSP 2.1 specifications
6.2.8 Precautions related to added and changed specifications in the JSP 2.0 specifications
6.2.9 Precautions for implementing JSPs of the JSP 1.2 specifications
6.2.10 Precautions related to the specifications that are added or changed in the EL2.2 specifications
6.2.11 Points to remember when upgrading the version of an existing Web application to the Servlet 3.0 specifications
6.2.12 Points to remember when upgrading the version of an existing Web application to the Servlet 2.5 specifications
6.2.13 Precautions related to Web applications when migrating from a previous version of Application Server to 09-00
6.2.14 Points to remember when upgrading the version of an existing Web application to the Servlet 2.4 specifications
6.2.15 Using annotations in servlets
6.2.16 Precautions related to size limitations for JavaVM methods
6.3 Precautions for JSP migration
6.3.1 Precautions related to the definition of script variables for the custom tag
6.3.2 Precautions related to the class attributes of <jsp:useBean> tag
6.3.3 Precautions related to the Expression check of the tag attribute values
6.3.4 Precautions related to Expression specified in the tag attribute values
6.3.5 Precautions related to the prefix attribute of the taglib directive

Appendixes
A. Error Status Code
A.1 Error status codes returned by the Web container
A.2 Error status codes returned by the Redirector
A.3 Error status codes returned by the in-process HTTP server
B. Precautions related to Cosminexus HTTP Server Settings
B.1 Precautions for restarting Cosminexus HTTP Server
B.2 Precautions related to the redirector log
B.3 Precautions for upgrading Cosminexus HTTP Server
C. Microsoft IIS Settings
C.1 Microsoft IIS 7.0 or Microsoft IIS 7.5 settings
D. Main Functionality Changes in Each Version
D.1 Main functionality changes in 09-00
D.2 Main functionality changes in 08-70
D.3 Main functionality changes in 08-53
D.4 Main functionality changes in 08-50
D.5 Main functionality changes in 08-00
E. Glossary

Index