Parámetros de configuración del motor JSP

En WebSphere Application Server, puede configurar los parámetros de configuración del motor JSP (Java™Server Pages) para obtener un rendimiento óptimo en un entorno de servidor de producción y para las necesidades de los desarrolladores en un entorno de desarrollo.

Los parámetros del motor de JSP son sensibles a las mayúsculas y minúsculas. Si el valor especificado para un parámetro está compuesto por dos o más palabras separadas por espacios, debe indicar el valor entre comillas. Algunos parámetros afectan al origen Java que se genera para un archivo de distintivos o una JSP. Estos parámetros se identifican mediante la sentencia siguiente: "Este parámetro requiere volver a generar el origen Java." Esta sentencia indica que si se modifica el parámetro de configuración, el valor para el parámetro no modifica nada hasta que los archivos JSP se vuelvan a convertir y se vuelvan a compilar los orígenes Java.

Best practice Best practice: Utilice una herramienta de ensamblaje como, por ejemplo, Rational Application Developer, para modificar los archivos de extensiones y enlace de IBM. Puede convertir archivos de extensiones y enlace en los módulos de XMI a XML utilizando la herramienta de conversión de enlaces y extensiones de IBM para multiplataformas.bprac

allowMultipleAttributeValues

Especifica si el contenedor JSP puede almacenar varios valores para un atributo de código personalizado. Establezca este parámetro en true para permitir que el contenedor JSP almacene varios valores. El valor por omisión de este parámetro es false. Este parámetro requiere volver a generar el origen Java.

compileWithAssert

Especifica si las clases Java generadas deben contener soporte para el recurso de aserción de Developer Kit, Java Technology Edition 1.4. El efecto de establecer este parámetro como true es que la opción –source 1.4 se pasa al compilador Java. El valor predeterminado de este parámetro es false. Este parámetro requiere volver a generar el origen Java.

classdebuginfo

Especifica si el compilador incluye información de depuración en el archivo de clase generado. Cuando se establece este parámetro como true, se pasa la opción –g al compilador Java. El valor predeterminado de este parámetro es false. Este parámetro requiere volver a generar el origen Java.

convertAttrValueToString

Especifica si convertir atributos de inicio y fin de los distintivos repetidos en series porque se utilizan. El valor predeterminado de este parámetro es false. Este parámetro requiere volver a generar el origen Java.

deprecation

Especifica si el compilador genera avisos de puesta en desuso cuando se compila el fuente Java generado. Cuando se establece este parámetro como true, se pasa la opción -deprecation al compilador Java. El valor predeterminado de este parámetro es false. Este parámetro requiere volver a generar el origen Java.

disableElCache

Establezca este parámetro en true para inhabilitar la memoria caché de expresiones commons-el si está experimentando condiciones de memoria porque las correlaciones hash son mantenidas por el evaluador de expresiones El valor predeterminado de este parámetro es false.

disableJspRuntimeCompilation

Si se establece esta opción en true, el motor JSP en tiempo de ejecución no convierte ni compila los archivos JSP; el motor JSP sólo carga los archivos de clase compilados previamente. Los archivos de origen JSP no es necesario que estén presentes para poder cargar los archivos de clase. Cuando esta opción se establece como true, puede instalar una aplicación sin un origen JSP, pero la aplicación debe tener archivos de clase precompilados. Se utiliza una propiedad personalizada del contenedor web con el mismo nombre que se utiliza para determinar el comportamiento de todos los módulos web instalados en un servidor. Si se establecen la propiedad personalizada del contenedor web y la opción del motor JSP, tiene prioridad la opción del motor JSP. El valor predeterminado de este parámetro es false.

disableTldSearch

Establezca esta opción en true para evitar que el motor JSP busque en los directorios de instalación de la aplicación los archivos TLD (taglib descriptor) al iniciar la aplicación. Si esta opción se establece en false, al iniciar la aplicación el motor JSP busca los archivos TLD en los directorios de instalación de la aplicación. El valor predeterminado de este parámetro es false.

La propiedad personalizada del contenedor web, com.ibm.wsspi.jsp.disableTldSearch, se puede utilizar para especificar si los motores JSP en todos los módulos web que están instalados en un servidor no buscan los archivos TLD en los directorios de instalación de la aplicación cuando se inicia la aplicación. Si se establecen valores conflictivos para la propiedad personalizada del contenedor web y la opción del motor JSP, prevalece el valor de la opción del motor JSP.

Nota: Esta opción sólo está disponible en los niveles de versión 7.0.0.3 y posteriores.

evalQuotedAndEscapedExpression

Establezca esta opción para manejar caracteres de escape y texto entrecomillado correctamente al determinar si se debe evaluar como una expresión.

Durante la fase de traducción de una compilación JSP, el motor JSP evalúa las expresiones. Los caracteres como, por ejemplo, el carácter de escape (\) o las comillas simples o dobles anidadas hacen que falle la conversión del archivo JSP. Consulte el ejemplo siguiente de una función que contenga caracteres que se evalúan:
<input type="text" value="${fn:substring('1234567', 0,4)}"/>
Debido al signo de comillas dobles directamente antes de la sentencia fn:substring, el archivo JSP no puede compilarse ya que el conversor no añadió el correlacionador de funciones a la clase Java generada. Además, si al signo de dólar ($) se le antepusiera la barra invertida (\$), el conversor seguirían intentando evaluar la expresión en lugar de tratarla como una cadena literal. Para manejar los caracteres de escape y texto entrecomillado correctamente, debe establecer evalQuotedAndEscapedExpression en true en el archivo ibm-web-ext.xmi o ibm-web-ext.xml de la aplicación que falla.
El código de ejemplo siguiente muestra una entrada en el archivo ibm-web-ext.xmi:
<jspAttributes xmi:id="JSPAttribute_1"
name="evalQuotedAndEscapedExpression" value="true"/> 
El código de ejemplo siguiente muestra una entrada en el archivo ibm-web-ext.xml:
<?xml version="1.0" encoding="UTF-8"?>
<web-ext
   xmlns="http://websphere.ibm.com/xml/ns/javaee"
   xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
   xsi:schemaLocation="http://websphere.ibm.com/xml/ns/javaee http://websphere.ibm.com/xml/ns/javaee/ibm-web-ext_1_0.xsd"
      version="1.0">
   <file-serving-attribute name="extendedDocumentRoot" value="/opt/extDocRootDir" />
   <jsp-attribute name="evalQuotedAndEscapedExpression" value="true" />
   <jsp-attribute name="extendedDocumentRoot" value="/opt/extDocRootDir","${MY_CUSTOM_VARIABLE}"  />
   
   <reload-interval value="3"/>
   <auto-encode-requests value="false"/>
   <auto-encode-responses value="false"/>
   <enable-directory-browsing value="false"/>
   <enable-file-serving value="true"/>
   <pre-compile-jsps value="false"/>
   <enable-reloading value="true"/>
   <enable-serving-servlets-by-class-name value="false" />	
</web-ext>

Para aplicar este comportamiento globalmente en todas las aplicaciones web, puede establecer la propiedad personalizada de contenedor web com.ibm.wsspi.jsp.evalQuotedAndEscapedExpression en true.

extendedDocumentRoot

Utilice el recurso raíz de documentos ampliado cuando las aplicaciones requieran acceso a archivos que se encuentran fuera del directorio de archivos web de la aplicación (archivos WAR). Este recurso permite configurar una aplicación con una o más vías de acceso de directorio desde las que se pueden servir archivos estáticos y archivos JSP. Puede utilizar este atributo cuando una aplicación requiera acceso a archivos que existan fuera del directorio de archivos web de la aplicación (archivos WAR). Por ejemplo, si varias aplicaciones requieren acceso a un conjunto de archivos comunes, puede colocar los archivos comunes en un directorio en el que pueda enlazar cada aplicación como un directorio raíz de documentos ampliado.

Para configurar una aplicación con una raíz de documentos ampliad, añada un atributo extendedDocumentRoot como atributo para servir archivos al archivo ibm-web-ext.xmi o ibm-web-ext.xml de la aplicación. El valor de este atributo es una lista delimitada por comas de los directorios que sirven como ubicación de directorio raíz para los archivos estáticos.

La siguiente entrada es un ejemplo del archivo ibm-web-ext.xmi:
<fileServingAttributes xmi:id="FileServingAttribute_1" name="extendedDocumentRoot" value="/opt/extDocRootDir"/>
Los ejemplos siguientes se basan en la entrada anterior del archivo ibm-web-ext.xmi con el atributo establecido en el valor /opt/extDocRootDir:
  • Una solicitud del recurso http://localhost:9080/raíz_contexto/sample.html exige que el archivo sample.html se encuentre en la estructura de directorios /opt/extDocRootDir/sample.html.
  • Una solicitud del recurso http://localhost:9080/raíz_contexto/myDir/sample.gif exige que el archivo sample.gif se encuentre en la estructura de directorios /opt/extDocRootDir/myDir/sample.gif.
La entrada siguiente es un ejemplo dentro del archivo ibm-web-ext.xml:
<?xml version="1.0" encoding="UTF-8"?>
<web-ext
   xmlns="http://websphere.ibm.com/xml/ns/javaee"
   xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
   xsi:schemaLocation="http://websphere.ibm.com/xml/ns/javaee http://websphere.ibm.com/xml/ns/javaee/ibm-web-ext_1_0.xsd"
      version="1.0">
   <file-serving-attribute name="extendedDocumentRoot" value="/opt/extDocRootDir" />
   <jsp-attribute name="evalQuotedAndEscapedExpression" value="true" />
   <jsp-attribute name="extendedDocumentRoot" value="/opt/extDocRootDir", "${MY_CUSTOM_VARIABLE}"/>
   <reload-interval value="3"/>
   <auto-encode-requests value="false"/>
   <auto-encode-responses value="false"/>
   <enable-directory-browsing value="false"/>
   <enable-file-serving value="true"/>
   <pre-compile-jsps value="false"/>
   <enable-reloading value="true"/>
   <enable-serving-servlets-by-class-name value="false" />	
</web-ext>
Importante: Para servir archivos estáticos desde un directorio raíz de documentos ampliado, debe habilitar el servicio de archivos.

Para configurar una aplicación con una raíz de documentos ampliada desde la que se sirvan archivos JSP, añada un atributo extendedDocumentRoot a un atributo JSP en el archivo ibm-web-ext.xmi o ibm-web-ext.xml. El valor de este atributo es una lista delimitada por comas de los directorios que sirven como ubicación de directorio raíz para los archivos JSP.

La siguiente entrada es un ejemplo del archivo ibm-web-ext.xmi:
<jspAttributes xmi:id="JSPAttribute_1" name="extendedDocumentRoot" value="/opt/extDocRootDir"/>
El ejemplo siguiente muestra la entrada en el archivo ibm-web-ext.xml:
<?xml version="1.0" encoding="UTF-8"?>
<web-ext
   xmlns="http://websphere.ibm.com/xml/ns/javaee"
   xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
   xsi:schemaLocation="http://websphere.ibm.com/xml/ns/javaee http://websphere.ibm.com/xml/ns/javaee/ibm-web-ext_1_0.xsd"
      version="1.0">
   <file-serving-attribute name="extendedDocumentRoot" value="/opt/extDocRootDir" />
   <jsp-attribute name="evalQuotedAndEscapedExpression" value="true" />
   <jsp-attribute name="extendedDocumentRoot" value="/opt/extDocRootDir", "${MY_CUSTOM_VARIABLE}" />
   <reload-interval value="3"/>
   <auto-encode-requests value="false"/>
   <auto-encode-responses value="false"/>
   <enable-directory-browsing value="false"/>
   <enable-file-serving value="true"/>
   <pre-compile-jsps value="false"/>
   <enable-reloading value="true"/>
   <enable-serving-servlets-by-class-name value="false" />	
</web-ext>

También puede utilizar un atributo extendedDocumentRoot para definir una variable WebSphere de varios nodos en el directorio adecuado.

Ejemplo de ibm-web-ext.xmi:
<jspAttributes xmi:id="JSPAttribute_2" name="extendedDocumentRoot"
  				value="${MY_CUSTOM_VARIABLE}"/>
Ejemplo de ibm-web-ext.xml:
 <jsp-attribute name="extendedDocumentRoot"
    value="${MY_CUSTOM_VARIABLE}" />
Donde MI_VARIABLE_PERSONALIZADA es la variable de WebSphere que desea definir en varios nodos.
El ejemplo siguiente muestra un archivo ibm-web-ext.xmi que define una raíz de documentos ampliada como atributo de servicio de archivos y como atributo JSP:
<?xml version="1.0" encoding="UTF-8"?>
<com.ibm.ejs.models.base.extensions.webappext:WebAppExtension xmi:version="2.0"
xmlns:xmi="http://www.omg.org/XMI"
xmlns:com.ibm.ejs.models.base.extensions.webappext="webappext.xmi" xmi:id="WebAppExtension_1"
          reloadInterval="3"
          reloadingEnabled="true"
          fileServingEnabled="true">
      <webApp href="WEB-INF/web.xml#WebApp_ID/">
      <fileServingAttributes xmi:id="FileServingAttribute_1" name="extendedDocumentRoot"
       value="/opt/extDocRootDir/">
      <jspAttributes xmi:id="JSPAttribute_1" name="extendedDocumentRoot"
       value="/opt/extDocRootDir/">
<com.ibm.ejs.models.base.extensions.webappext:WebAppExtension>
El ejemplo siguiente muestra un archivo ibm-web-ext.xml que define una raíz de documentos ampliada como atributo de servicio de archivos y como atributo JSP:
<?xml version="1.0" encoding="UTF-8"?>
<web-ext
   xmlns="http://websphere.ibm.com/xml/ns/javaee"
   xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
   xsi:schemaLocation="http://websphere.ibm.com/xml/ns/javaee http://websphere.ibm.com/xml/ns/javaee/ibm-web-ext_1_0.xsd"
      version="1.0">
   <file-serving-attribute name="extendedDocumentRoot" value="/opt/extDocRootDir" />
   <jsp-attribute name="evalQuotedAndEscapedExpression" value="true" />
   <jsp-attribute name="extendedDocumentRoot" value="/opt/extDocRootDir","${MY_CUSTOM_VARIABLE}"  />
   
   <reload-interval value="3"/>
   <auto-encode-requests value="false"/>
   <auto-encode-responses value="false"/>
   <enable-directory-browsing value="false"/>
   <enable-file-serving value="true"/>
   <pre-compile-jsps value="false"/>
   <enable-reloading value="true"/>
   <enable-serving-servlets-by-class-name value="false" />	
</web-ext>

Si la petición es una petición parcial válida para un archivo de bienvenida, se devuelve un error 404. Si el archivo JSP se encuentra dentro de un archivo JAR y valor del atributo reloadEnabled es true, se utilizará la indicación de la hora del archivo JAR para las comprobaciones de isOutDated a efectos de recompilación. El valor por omisión de este parámetro es nulo.

Supported configurations Supported configurations: Para los archivos de enlace y extensión de IBM®, la extensión del nombre de archivo .xmi o .xml es diferente en función de si se utiliza una aplicación o módulo previo a Java EE 5 o una aplicación o módulo Java EE 5 o posterior. Un archivo de enlace o extensión de IBM se denomina ibm-*-ext.xmi o ibm-*-bnd.xmi donde * es el tipo de archivo de extensión o enlace como app, application, ejb-jar o web. Se aplican las condiciones siguientes:
  • En el caso de una aplicación o módulo que utilice una Java EE anterior a la versión 5, la extensión del archivo debe ser .xmi.
  • En el caso de una aplicación que utilice Java EE versión 5 o posterior, la extensión del archivo debe ser .xml. Si los archivos .xmi se incluyen con la aplicación o el módulo, el producto ignora los archivos .xmi.

No obstante, puede existir un módulo de Java EE 5 o posterior dentro de una aplicación que incluya archivos previos a Java EE 5 y que utilice la extensión de nombre de archivo .xmi.

Los archivos ibm-webservices-ext.xmi, ibm-webservices-bnd.xmi, ibm-webservicesclient-bnd.xmi, ibm-webservicesclient-ext.xmi, y ibm-portlet-ext.xmi siguen utilizando la extensión de archivo .xmi.

sptcfg

ieClassId

Indica el ID de clase COM del plugin Java para Internet Explorer.

Los distintivos <jsp:plugin> utilizan este valor. El valor predeterminado de classid es clsid:8AD9C840-044E-11D1-B3E9-00805F499D93

javaEncoding

Especifica la codificación que se utiliza cuando se genera el archivo .java y cuando lo compila el compilador Java. Establezca este parámetro cuando la codificación de páginas de las páginas JSP no es compatible con UTF-8. Cuando se establece -javaEncoding, dicha codificación se pasa al compilador Java a través del argumento -encoding. Recuerde que Jikes no da soporte a la codificación. El valor predeterminado es UTF-8. Este parámetro requiere volver a generar el origen Java.

jdkSourceLevel

Este parámetro del motor JSP se introdujo en WebSphere Application Server versión 6.1. Utilice este parámetro en lugar del parámetro compileWithAssert, aunque compileWithAssert siga funcionando en la versión 6.1.

El valor predeterminado de este parámetro es 17. Este parámetro requiere volver a generar el origen Java. A continuación encontrará los valores del parámetro jdkSourceLevel:
  • El valor 13 inhabilita todas las características de lenguaje nuevas de JDK 1.4, JDK 5.0, JDK 6.0 y JDK 7.0.
  • El valor 14 habilita el uso del recurso de aserción e inhabilita todas las características de lenguaje nuevas de JDK 5.0, JDK 6.0 y JDK 7.0.
  • El valor 15 habilita el uso del recurso de aserción e inhabilita todas las características de lenguaje nuevas de JDK 6.0 y JDK 7.0.
  • El valor 16 habilita el uso del recurso de aserción e inhabilita todas las características de lenguaje nuevas de JDK 7.0.
  • El valor 17 habilita el uso de las características nuevas de JDK 7.0.
  • El valor 18 habilita el uso de las características nuevas de JDK 8.0.

jspClassLoaderLimit

WebSphere Application Server crea un objeto JSPExtensionClassLoader para cada JSP en una aplicación. Esto puede dar lugar a que estos objetos utilicen memoria nativa aumentada, lo que puede provocar una excepción OutOfMemoryException. Este valor entero determina cuántos objetos JSPExtensionClassLoader deben mantenerse en la memoria.

<jspAttributes xmi:id="JSPAttribute_1" name="jspClassLoaderLimit" value="1500"/>

jspClassLoaderExclusionList

Mientras que jspClassLoaderLimit especifica el número de objetos JSPExtensionClassLoader que debe mantenerse cargado en memoria, esta lista delimitada por comas de los valores JSP indica que los JSP no se van a descargar independientemente del límite establecido por jspClassLoaderLimit.

<jspAttributes xmi:id="JSPAttribute_2" name="jspClassLoaderExclusionList" value="/test/RappHTML2.jsp,/test/RappHTML4.jsp"/>

jsp.file.extensions

Para los archivos JSP con extensiones distintas a las cuatro extensiones estándar, .jsp, .jspx, .jsw y .jsv, puede configurar estas extensiones con este parámetro. Estas extensiones se añaden a las extensiones estándar.

El método preferido para hacerlo es crear un <jsp-property-group> en web.xml y añadir un distintivo <url-pattern> para cada extensión.

El motor JSP puede manejar una lista de extensiones de archivos separada por dos puntos o por punto y coma. Por ejemplo, .ext1;.ext2:.extn

keepgenerated

Indica que se conservan los archivos Java generados por el compilador de JSP durante la fase de traducción del proceso. El valor predeterminado de este parámetro es false. Este parámetro requiere volver a generar el origen Java.

keepGeneratedclassfiles

Indica que se conservan los archivos de clase generados por el compilador de JSP durante la fase de traducción del proceso. El valor predeterminado de este parámetro es true. Este parámetro requiere volver a generar el origen Java.

modifyPageContextVariable

Durante la fase de conversión de un archivo de distintivos que se compila, el contenedor JSP utiliza implícitamente la variable pageContext para el objeto PageContext. EL uso de la variable pageContext como nombre de variable implícita en archivos de distintivos no cumple la especificación JSP. Si se producen errores de compilación para aplicaciones que utilizan una variable pageContext en su archivo de códigos, establezca el atributo modifyPageContextVariable en true para eliminar el uso del nombre de la variable pageContext en el código Java generado para archivos de códigos.

recompileJspOnRestart

Determina si se vuelve a convertir y compilar un archivo JSP después del arranque de la aplicación la primera vez que se solicita el archivo. Si recompileJspOnRestart es false, se continúa compilando un archivo JSP en la primera solicitud, si es necesario, a menos que el parámetro disableJspRuntimeCompilation sea true. El valor predeterminado de este parámetro es false.

reloadEnabled

Determina si se debe convertir y compilar un archivo JSP en el tiempo de ejecución si se modifica el archivo JSP o sus dependencias (consulte trackDependencies).

Si reloadEnabled es false, se continúa compilando un archivo JSP en la primera petición, si es necesario, a menos que el parámetro disableJspRuntimeCompilation sea true. El valor predeterminado de este parámetro es false.

Si no se especifica este parámetro del motor JSP, se utiliza el parámetro equivalente del contenedor web para la recarga de la clase del módulo web. No obstante, para una aplicación cuyo descriptor de despliegue tenga el nivel de Servlet 2.2, el valor por omisión es true. De esta forma se da soporte a las aplicaciones que se migran de WebSphere Application Server versión 4.x.

reloadInterval

Si la recarga está habilitada, reloadInterval determina la demora entre las comprobaciones para ver si un archivo JSP es obsoleto.

Por ejemplo, si reloadInterval es 5, el motor JSP comprueba si hay algún archivo JSP obsoleto sólo cuando se ha realizado la última comprobación durante más de 5 segundos antes de la petición actual del archivo JSP. Cuanto más grande sea el valor de reloadInterval, menor será la frecuencia con la que el motor JSP comprobará si es necesario volver a cargar el archivo JSP. Si no se especifica este parámetro del motor JSP, se utiliza el parámetro equivalente del contenedor web para la recarga de la clase del módulo web. No obstante, para una aplicación cuyo descriptor de despliegue tenga el nivel de Servlet 2.2, el valor por omisión es 5 segundos. De esta forma se da soporte a las aplicaciones que se migran de WebSphere Application Server versión 4.x.

reusePropertyGroupConfigOnInclude

For transitioning users For transitioning users: La mayoría de las propiedades que se definen en un grupo de atributos JSP se aplican a una unidad de conversión completa, por ejemplo, el archivo JSP solicitado que coincide con su patrón de URL y todos los archivos que incluye utilizando la directiva include. Las excepciones son las propiedades page-encoding e is-xml, que se aplican individualmente para cada archivo JSP que coincide con su patrón de URL. Para revertir el comportamiento a un valor anterior a WebSphere Application Server versión 8.0, establezca el atributo en true para aplicar los dos valores de propiedad a toda la unidad de conversión. trns

scratchdir

Especifica el directorio en el que se crean los archivos de clase generados.

La propiedad del sistema com.ibm.websphere.servlet.temp.dir se utiliza para establecer la opción scratchdir para todo el servidor. El parámetro scratchdir del motor JSP tiene prioridad sobre la propiedad del sistema com.ibm.websphere.servlet.temp.dir. El valor predeterminado de este parámetro es raíz_perfil/temp. Este parámetro requiere volver a generar el origen Java.

Avoid trouble Avoid trouble: No especifique una vía de acceso de directorio que sitúe el directorio temporal JSP en el mismo nivel o bajo el directorio temporal de configuración. La ubicación predeterminada del directorio temporal de configuración es inicio_perfil/config/temp.

Por ejemplo, si cambia la ubicación del directorio temporal JSP por dir_inicio_perfil/config/temp o si coloca el directorio temporal JSP debajo del directorio temporal de configuración en dir_inicio_perfil/config/temp/temp, se producen errores de proceso.

gotcha

trackDependencies

Si la recarga está habilitada, trackDependencies determina si el motor JSP realiza un seguimiento de las modificaciones en las dependencias de JavaServer solicitadas así como en el propio archivo JSP.

El motor JSP hace un seguimiento de las siguientes dependencias:
  1. Archivos incluidos estáticamente en el archivo JSP
  2. Archivos de distintivos a los que se hace referencia en el archivo JSP (excepto los archivos de distintivos que están en los archivos JAR)
  3. Archivos TLD a los que se hace referencia en el archivo JSP (excepto los TLD que hay en los JAR)
El valor predeterminado es false.

useFullPackageNames

Si useFullPackageNames es true, el motor JSP genera y carga clases JSP utilizando nombres completos de paquetes.

El valor por omisión es generar todas las clases JSP en el mismo paquete. (Para obtener más información, consulte el tema Paquetes y directorios para archivos .java y .class generados). El cargador de clases del motor JSP sabe cómo cargar las clases JSP cuando están todas en el mismo paquete.

El método por omisión para generar todas las clases JSP en el mismo paquete tiene la ventaja de generar vías de acceso del sistema de archivos más pequeñas. Los nombres completos de paquetes tienen la ventaja de permitir la configuración de los archivos de clase JSP precompilados como servlets en el archivo web.xml sin necesidad de utilizar el atributo jsp-file, lo que da como resultado un solo cargador de clases, el cargador de clases de la aplicación web, que se utiliza para cargar todas esas clases JSP. De forma parecida, cuando los atributos de configuración useFullPackageNames y disableJspRuntimeCompilation del motor JSP tienen los dos el valor true, se utiliza un solo cargador de clases para cargar todas las clases JSP, aunque los archivos JSP no estén configurados como servlets en el archivo web.xml.

Cuando useFullPackageNames se establece en true, el compilador por lotes genera un archivo generated_web.xml en el directorio WEB-INF del módulo web. Este archivo contiene información de configuración de servlets para cada archivo JSP que se ha convertido y compilado satisfactoriamente. De forma opcional, la información se puede copiar en el archivo web.xml del módulo web de forma que los archivos JSP los cargue como servlets el contenedor web. Tenga en cuenta que si se configura de esta manera un archivo JSP como un servlet, no se realiza la recarga del archivo JSP en el tiempo de ejecución si se modifica el archivo JSP. Esto se debe a que el archivo JSP se trata como un servlet normal y las peticiones dirigidas a él no pasarán por el motor JSP. Este parámetro requiere volver a generar el origen Java.

useImplicitTagLibs

El motor JSP reconoce implícitamente tsx y jsx como prefijos de las bibliotecas de distintivos que proporciona el motor JSP. Si se utilizan tsx o jsx como prefijos de una biblioteca de distintivos del cliente, la biblioteca de distintivos del cliente altera temporalmente la biblioteca de distintivos implícita. No obstante, el motor JSP continúa guardando en antememoria la biblioteca de distintivos implícita. Si se establece este parámetro de forma explícita como false, el motor no guarda en antememoria la biblioteca de distintivos implícita y guarda los recursos. El valor predeterminado de este parámetro es true.

El URL predeterminado para los códigos tsx es http://websphere.ibm.com/tags/tsx. El URI predeterminado para los códigos jsx es http://websphere.ibm.com/tags/jsx.

Es posible que deba definir el prefijo de biblioteca de códigos tsx o jsx con un URL distinto de su URI predeterminado. Además, es posible que tenga que definir el mismo prefijo de biblioteca con un URI distinto. En estas dos situaciones, puede establecer la propiedad personalizada com.ibm.wsspi.jsp.allowtaglibprefixredefinition para evitar errores de conversión. Para obtener más información, consulte la documentación sobre las propiedades personalizadas de las JavaServer Pages.

useInMemory

Especifica que el motor JSP convierte y compila código Java en la memoria del sistema.

Cuando no se establece esta opción, el motor JSP debe realizar los siguientes pasos:
  1. Escribir el archivo Java convertido en el sistema de archivos
  2. Cargar el archivo Java desde el sistema de archivos
  3. Compilar el código en un archivo de clase
  4. Escribir la clase en el sistema de archivos
  5. Cargar el archivo de clase en el cargador de clases.
Avoid trouble Avoid trouble: Ningún archivo .class o .java se escribirá en el disco del sistema. Para depurar o crear un archivo JAR a partir de código JSP precompilado, debe inhabilitar esta opción.gotcha

useJikes

Especifica si se utiliza Jikes para compilar los orígenes Java.

NOTA: Jikes no se suministra con WebSphere Application Server. El valor predeterminado de este parámetro es false. Este parámetro requiere volver a generar el origen Java.

usePageTagPool

Habilita o inhabilita la reutilización de los manejadores de distintivos personalizados de forma individual para cada página JSP. El valor predeterminado de este parámetro es false. Este parámetro requiere volver a generar el origen Java.

useThreadTagPool

Cuando se utiliza el sondeo del manejador de distintivos a nivel de hebras, los manejadores de distintivos pueden volver a utilizarse entre distintas apariciones de una acción personalizada por todas las páginas JSP en un solo módulo web por las distintas solicitudes. El valor predeterminado de este parámetro es false. Este parámetro requiere volver a generar el origen Java.

Si permite que se vuelva a utilizar el manejador de distintivos pueden ponerse de manifiesto problemas en el código del manejador de distintivos relacionados con la capacidad de reutilización del distintivo. Un manejador de distintivos personalizados siempre debe hacer dos cosas:
  • El método release del manejador de distintivos debe restablecer su estado y liberar cualquiera de los recursos privados que se han utilizado. El motor JSP garantiza que se llamará al método release antes de que el recolector de basura recoja al manejador de distintivos.
  • En el método doEndTag(), se deben restaurar todos los estados de instancias asociados a esta instancia.

verbose

Indica que el compilador genera avisos en modalidad verbosa cuando se compila el código fuente Java generado. El efecto de establecer este parámetro como true es que la opción –verbose se pasa al compilador Java. El valor predeterminado de este parámetro es false. Este parámetro requiere volver a generar el origen Java.

Si permite que se vuelva a utilizar el manejador de distintivos pueden ponerse de manifiesto problemas en el código del manejador de distintivos relacionados con la capacidad de reutilización del distintivo. Un manejador de distintivos personalizados siempre debe hacer dos cosas:
  • El método release del manejador de distintivos debe restablecer su estado y liberar cualquiera de los recursos privados que se han utilizado. El motor JSP garantiza que se llamará al método release antes de que el recolector de basura recoja al manejador de distintivos.
  • En el método doEndTag(), se deben restaurar todos los estados de instancias asociados a esta instancia.
    PRECAUCIÓN:
    Cuando se utiliza el sondeo de códigos de página o hebra, el método doEndTag no se llama en caso de excepción y, si es necesario eliminar un estado de servicio, deberá implementarse la interfaz TryCatchFinally.

Icon that indicates the type of topic Reference topic



Timestamp icon Last updated: last_date
http://www14.software.ibm.com/webapp/wsbroker/redirect?version=cord&product=was-nd-mp&topic=rweb_jspengine
File name: rweb_jspengine.html