Compiling JavaServer Page files

Compiling the JavaServer Page (JSP) files in the site or store will significantly reduce the amount of time needed to load the store. As a result, IBM recommends that you batch-compile the store or site JSP files after publishing a store archive and after deploying JSP files to a production environment.

If we are deploying Java EE assets, and those assets contain JSP files, ensure you compile your JSP files. Regardless of whether you deploy a single file, a partial application, or an entire module, you should do this if there are JSP files involved.


Before beginning

The code responsible for checking for the use of reserved keywords as EL variable identifiers was enhanced in WebSphere Application Server v8.0 and beyond, making the checking more strict. The variable checking code not only checks for reserved EL keywords, but also Java reserved keywords. To ensure that WebSphere Commerce pages compile correctly, follow this procedure in this document, .


Procedure

  1. Start a command line session.

  2. Change to the following directory: WC_profiledir/bin

  3. To compile all WebSphere Commerce JSP files, run the following command:
    (AIX) (Linux)

      JspBatchCompiler.sh -enterpriseapp.name "WC_instance_name" 
      -webmodule.name "Stores.war" -compileToWebInf false -cell.name "cellname" -node.name "nodename" 
      -server.name "server1"

    (IBM i)

      JspBatchCompiler -enterpriseapp.name "WC_instance_name"  
      -webmodule.name "Stores.war" -compileToWebInf false -cell.name "cellname" 
      -node.name "nodename" -server.name "server1" -profileName "WAS_instance_name"

    Note: If a default WebSphere Application Server instance is used, the -cell.name and -node.name parameters are set to the hostname by default. If a non-default WebSphere Application Server instance is used, the -cell.name and -node.name parameters are set to the hostname_WAS_instance_name by default. (Windows)

      JspBatchCompiler.bat -enterpriseapp.name "WC_instance_name" -webmodule.name "Stores.war"
      -compileToWebInf false -cell.name "cellname" -node.name "nodename" -server.name "server1"

    (Developer)

      JspBatchCompiler.bat -enterpriseapp.name "WC" -webmodule.name "Stores.war" -compileToWebInf false 
      -cell.name "localhost" -node.name "localhost" -server.name "server1"

    Where:

      instance_name
      is the name of the WebSphere Commerce instance for which we are compiling the JSP files. The name of the default WebSphere Commerce instance is demo.

      cellname
      is the name of your cell. Default is WC_ instance_name_cell.

      nodename
      is the name of your node that runs WebSphere Commerce. Default is WC_ instance_name_node.

    To compile all of the WebSphere Commerce JSP files for the site, omit the -webmodule.name "Stores.war" option.

    Several errors are logged when you perform these compiles. We can safely ignore these errors.


Related reference
JSP programming best practice: Use the .jspf extension for JSP segments