Propiedades personalizadas del contenedor Web
Puede configurar los pares de datos de nombre-valor arbitrarios, en los que el nombre es una clave de propiedad y el valor es un valor de serie que se puede utilizar para establecer propiedades internas de configuración del sistema. Cuando se define una nueva propiedad, esto permite configurar un valor que no esté disponible en la consola administrativa.La siguiente es una lista de algunas de las propiedades personalizadas del contenedor web que están disponibles.
Para especificar propiedades personalizadas de contenedor web:
- En la consola administrativa pulse .
- En Propiedades adicionales, seleccione Propiedades personalizadas.
- En la página Propiedades personalizadas, pulse Nuevo.
- En la página de valores, especifique el nombre de la propiedad personalizada que desea configurar en el campo Nombre y el valor correspondiente en el campo Valor.
- Pulse Aplicar o Aceptar.
- Pulse Guardar en la barra de tareas de la consola para guardar los cambios realizados en la configuración.
- Reinicie el servidor.
A continuación figura una lista de las propiedades personalizadas que se proporcionan con el servidor de aplicaciones. Los temas, las propiedades personalizadas de contenedor web específicas de JavaServer Pages y las propiedades personalizadas de transporte HTTP se indican en otro tema.
- BodyContentBuffSize
- com.ibm.ws.jsf.disablealternatefacesconfigsearch
- com.ibm.ws.jsp.doNotEscapeWhitespaceCharsInExpression
- com.ibm.ws.jsp.enableDefaultIsELIgnoredInTag
- com.ibm.ws.jsp.expressionreturnemptystring
- com.ibm.ws.jsp.getWriterOnEmptyBuffer
- com.ibm.ws.jsp.limitBuffer
- com.ibm.ws.jsp.throwExceptionForAddELResolver
com.ibm.ws.jsp.zosFileLockRetrying
com.ibm.ws.jsp.zosReCompile
- com.ibm.ws.webcontainer.allowDotsinName
- com.ibm.ws.webcontainer.allowPrivAccessGetResource
- com.ibm.ws.webcontainer.appendMetaInfResourcesInLooseLib
- com.ibm.ws.webcontainer.channelwritetype
- com.ibm.ws.webcontainer.checkEDRinGetRealPath
- com.ibm.ws.webcontainer.copyattributeskeyset
- com.ibm.ws.webcontainer.decodeParamViaReqEncoding
- com.ibm.ws.webcontainer.deferServingRequestsUntilEarStarted
- com.ibm.ws.webcontainer.deferServletRequestListenerDestroyOnError
- com.ibm.ws.webcontainer.disableSetCharacterEncodingAfterParametersRead
- com.ibm.ws.webcontainer.disableStaticMappingCache
- com.ibm.ws.webcontainer.disableSystemAppGlobalListenerLoading
- com.ibm.ws.webcontainer.disablexPoweredBy
- com.ibm.ws.webcontainer.disallowAllFileServing
- com.ibm.ws.webcontainer.disallowServeServletsByClassname
- com.ibm.ws.webcontainer.discernUnavailableServlet
- com.ibm.ws.webcontainer.dispatcherRethrowSER
- com.ibm.ws.webcontainer.dispatcherRethrowSError
com.ibm.ws.webcontainer.divertrecursiveexceptiontoerrorlog
- com.ibm.ws.webcontainer.donotservebyclassname
- com.ibm.ws.webcontainer.emptyServletMappings
- com.ibm.ws.webcontainer.enabledefaultservletrequestpathelements
- com.ibm.ws.webcontainer.enableErrorExceptionTypeFirst
- com.ibm.ws.webcontainer.enableExactMatchJSecurityCheck
- com.ibm.ws.webcontainer.enableJspMappingOverride
- com.ibm.ws.webcontainer.enableMultiReadOfPostData
- com.ibm.ws.webcontainer.excludehandledtypesclasses
- com.ibm.ws.webcontainer.extractHostHeaderPort and trusthostheaderport
com.ibm.ws.webcontainer.fileWrapperEvents
com.ibm.ws.webcontainer.FileWrapperEventsLessDetail
- com.ibm.ws.webcontainer.finishresponseonclose
- com.ibm.ws.webcontainer.ForceDifferentCookiePaths
- com.ibm.ws.webcontainer.handlingRequestWithOverridenPath
- com.ibm.ws.webcontainer.HTTPOnlyCookies
- com.ibm.ws.webcontainer.ignoreinjectionfailure
- com.ibm.ws.webcontainer.ignoreInvalidQueryString
- com.ibm.ws.webcontainer.ignorePostConstructOverriddenMethod
- com.ibm.ws.webcontainer.ignoreSemiColonOnRedirectToWelcomePage
- com.ibm.ws.webcontainer.IgnoreSessiononStaticFileRequest
- com.ibm.ws.webcontainer.initFilterBeforeInitServlet
- com.ibm.ws.webcontainer.invokeFilterAfterService
- com.ibm.ws.webcontainer.invokeFilterInitAtStartup
- com.ibm.ws.webcontainer.KeepUnreadPostDataAfterResponseSentToClient
- com.ibm.ws.webcontainer.logServletContainerInitializerClassloadingErrors
- com.ibm.ws.webcontainer.mapFiltersToAsterisk
- com.ibm.ws.webcontainer.maxParamPerRequest
- com.ibm.ws.webcontainer.metainfresourcescachesize
- com.ibm.ws.webcontainer.modifiedFileNotFoundExceptionBehavior
- com.ibm.ws.webcontainer.normalizerequesturi
- com.ibm.ws.webcontainer.parseUTF8PostData
- com.ibm.ws.webcontainer.preserveRequestParameterValues
- com.ibm.ws.webcontainer.provideQStringToWelcomeFile
- com.ibm.ws.webcontainer.RedirectWithPathInfo
- com.ibm.ws.webcontainer.removeAttributeForNullObject
- com.ibm.ws.webcontainer.returnDefaultContextPath
- com.ibm.ws.webcontainer.searchMetaInfResourcesDuringAppStart
- com.ibm.ws.webcontainer.SendResponseToClientAsPartOfSendRedirect
- com.ibm.ws.webcontainer.SendResponseToClientWhenResponseIsComplete
- com.ibm.ws.webcontainer.setcontenttypebysetheader
- com.ibm.ws.webcontainer.setAsyncDispatchRequestURI
- com.ibm.ws.webcontainer.ServeWelcomeFileFromExtendedDocumentRoot
- com.ibm.ws.webcontainer.ServletDestroyWaitTime
- com.ibm.ws.webcontainer.setUnencodedHTMLinsendError
- com.ibm.ws.webcontainer.skipInputStreamReadOnError
- com.ibm.ws.webcontainer.SkipMetaInfResourcesProcessing
- com.ibm.ws.webcontainer.suppressheadersinrequest
- com.ibm.ws.webcontainer.suppressHtmlRecursiveErrorOutput
- com.ibm.ws.webcontainer.suppressLastZeroBytePackage
- com.ibm.ws.webcontainer.suppressLoggingFileNotFoundExceptions
- com.ibm.ws.webcontainer.suppressLoggingWebGroupVhostNotFound
- com.ibm.ws.webcontainer.suppressServletExceptionLogging
- com.ibm.ws.webcontainer.throwMissingJspException
- com.ibm.ws.webcontainer.throwpostconstructexception
com.ibm.ws.webcontainer.tolerateLocaleMismatchForServingFiles
- com.ibm.ws.webcontainer.useOriginalRequestState
- com.ibm.ws.webcontainer.useSemiColonAsDelimiterInURI
- com.ibm.ws.webcontainer.webgroupvhostnotfound
- com.ibm.ws.webcontainer.xPoweredBy
- com.ibm.websphere.management.application.sync.deleteSymbolicLinks
- com.ibm.wsspi.jsp.allowMultipleAttributeValues
- com.ibm.wsspi.jsp.convertAttrValueToString
- com.ibm.wsspi.jsp.disableElCache
- com.ibm.wsspi.jsp.disableResourceInjection
- com.ibm.wsspi.jsp.disableTldSearch
- com.ibm.wsspi.jsp.enabledoublequotesdecoding
- com.ibm.wsspi.jsp.removexmlnsfromoutput
ConnectionResponseTimeout
DebugSessionCrossover
- DecodeUrlAsUTF8
- DisableMultiThreadedServletConnectionMgmt
- com.ibm.ws.webcontainer.denyDuplicateFilterinChain
- enableInProcessConnections
- fileServingEnabled, directoryBrowsingEnabled y serveServletsByClassnameEnabled
- ForceSessionIdLengthCheck
- ForceSessionInvalidationMultiple
- httpsIndicatorHeader
- HttpSessionIdReuse
- Escuchas
MutualAuthCBindCheck
- prependSlashToResource
- com.ibm.ws.webcontainer.suppressLoggingServiceRuntimeExcep
- trusted
UseOracleBLOB
setContentLengthOnClose
- com.ibm.ws.webcontainer.servlet30compatibility
BodyContentBuffSize
El tamaño del almacenamiento intermedio del contenido del cuerpo de un archivo JavaServer Pages (JSP) puede afectar al rendimiento de algunas aplicaciones. De forma predeterminada, el tamaño del almacenamiento intermedio del contenido del cuerpo es 512 bytes. Sin embargo, puede utilizar la propiedad personalizada BodyContentBuffSize para establecer un valor de almacenamiento intermedio diferente.
Name | Valor predeterminado |
---|---|
BodyContentBuffSize | 512 |
com.ibm.ws.jsf.disablealternatefacesconfigsearch
Inhabilita la búsqueda MyFaces para META-INF/*.faces-config.xml en todas las aplicaciones web de un servidor.
Name | Valor predeterminado |
---|---|
com.ibm.ws.jsf.disablealternatefacesconfigsearch | false |
com.ibm.ws.jsp.doNotEscapeWhitespaceCharsInExpression
Por lo general, las expresiones EL (Expression Language) en archivos de códigos se evalúan antes de que se compilen un JSP (JavaServer Page). Sin embargo, para asegurarse de que una expresión EL que en la sintaxis contiene un retorno de carro (\r), una línea nueva (\n) o un carácter de tabulación (\t) no genera una excepción javax.el.Exceptionable, establezca la propiedad personalizada com.ibm.ws.jsp.expressionistic en true en el archivo ibm-web-ext.xml.
Name | Valor predeterminado |
---|---|
com.ibm.ws.jsp.doNotEscapeWhitespaceCharsInExpression | false |
com.ibm.ws.jsp.enableDefaultIsELIgnoredInTag
Por lo general, las expresiones EL (Lenguaje de expresión) en archivos de códigos se evalúan antes de que se compilen los archivos de códigos de una JSP (JavaServer Page). Sin embargo, bajo determinadas condiciones, estas expresiones EL en un archivo de código no se evalúan si el atributo <el-ignored> se establece en true.
Para garantizar que las expresiones EL siempre se evalúen, establezca la propiedad personalizada com.ibm.ws.jsp.enableDefaultIsELIgnoredInTag en true. El valor predeterminado de esta propiedad es false.
Name | Valor predeterminado |
---|---|
com.ibm.ws.jsp.enableDefaultIsELIgnoredInTag | false |
com.ibm.ws.jsp.expressionreturnemptystring
Esta propiedad le permite indicar si desea que el contenedor JSP devuelva una serie vacía o nula para los valores no establecidos en una expresión.
<input type='text' name='test' value='<%=testBean.getTestValue()%>'maxlength="16">
Algunas aplicaciones esperan que se devuelva una serie vacía en estas situaciones, en lugar del valor nulo. Si las aplicaciones que está ejecutando esperan que se devuelva una serie vacía, añada esta propiedad personalizada a sus valores de contenedor web y establezca la propiedad en true.
Name | Valor predeterminado |
---|---|
com.ibm.ws.jsp.expressionreturnemptystring | false |
com.ibm.ws.jsp.getWriterOnEmptyBuffer
El servicio de memoria caché dinámica utiliza vacíos para determinar cuando finaliza un fragmento web almacenable en memoria caché como, por ejemplo, una inclusión JSP o c:import, y empieza el siguiente fragmento web. Si establece la propiedad personalizada com.ibm.wsspi.jsp.usecdatatrim en true para el motor JSP, todos los espacios en blanco y líneas adicionales en el código Java generado se eliminan. En esta situación, es posible que no haya contenido que escribir antes del primer vaciado. Si el código Java generado contiene texto u otro código antes del primer vaciado, tiene lugar el proceso normal de memoria caché dinámica.
Si establece la propiedad com.ibm.wsspi.jsp.usecdatatrim en true y utiliza el servicio de memoria caché dinámica, debe establecer también la propiedad personalizada com.ibm.ws.jsp.getWriterOnEmptyBuffer en true. Esta propiedad personalizada exige que el motor JSP llame a la función de vaciado cuando llega al final de los primeros fragmentos web susceptibles de almacenarse en memoria caché, aunque no haya datos que vaciar. El valor predeterminado de esta propiedad es false.
Name | Valor predeterminado |
---|---|
com.ibm.ws.jsp.getWriterOnEmptyBuffer | false |
com.ibm.ws.jsp.limitBuffer
El tamaño del almacenamiento intermedio del contenido de los cuerpos de los códigos de un archivo JavaServer Pages (JSP) se reutiliza para optimizar el rendimiento. Si el tamaño de un cuerpo de código aumenta más allá del tamaño del almacenamiento intermedio del contenido del cuerpo predeterminado, el tamaño del almacenamiento intermedio se adapta para dar cabida al cuerpo del código. Sin embargo, el almacenamiento intermedio no se restablece en el tamaño predeterminado después de servir una solicitud. Como resultado, la memoria de almacenamiento dinámico que utiliza la implementación de org.apache.jasper.runtime.BodyContentImpl, puede aumentar con el tiempo. Puede configurar el tamaño del almacenamiento intermedio de contenido del cuerpo estableciendo un valor entero para la propiedad personalizada BodyContentBuffSize. Para obtener más información, consulte BodyContentBuffSize.
Utilice la propiedad personalizada com.ibm.ws.jsp.limitBuffer para desasignar tamaños de almacenamiento intermedio de contenido de cuerpo grandes y crear un almacenamiento intermedio con el tamaño de almacenamiento intermedio predeterminado.
Name | Valor predeterminado |
---|---|
com.ibm.ws.jsp.limitBuffer | false |
com.ibm.ws.jsp.throwExceptionForAddELResolver
Establezca la propiedad com.ibm.ws.jsp.throwExceptionForAddELResolver en true si no desea permitir que un ELResolver se registre desde un servlet o un filtro después de que la aplicación reciba una petición del cliente. Cuando esta propiedad se establece en true, se emite una excepción IllegalStateException como se indica en la especificación de JSP (Java Server Pages) para el método addELResolver() del método de la interfaz JspApplicationContext.
El valor predeterminado de esta propiedad es false.
Name | Valor predeterminado |
---|---|
com.ibm.ws.jsp.throwExceptionForAddELResolver | false |
![[z/OS]](../images/ngzos.gif)
com.ibm.ws.jsp.zosFileLockRetrying
Utilice la propiedad com.ibm.ws.jsp.zosFileLockRetrying para especificar, en segundos, la cantidad de tiempo durante el que un hebra sigue intentando obtener un bloqueo en un archivo JSP.
Un archivo JSP se bloquea antes de iniciar el proceso de compilación, y se desbloquea una vez finalizado este proceso. Si una hebra no puede bloquear un archivo JSP, la hebra sigue intentando obtener el bloqueo del archivo JSP durante 240 segundos. Si la hebra no puede obtener el bloqueo durante este intervalo de tiempo, se emite un mensaje de error. La hebra no realiza ningún intento adicional para obtener un bloqueo para el archivo JSP.
Name | Valor predeterminado |
---|---|
com.ibm.ws.jsp.zosFileLockRetrying | 240 |
![[z/OS]](../images/ngzos.gif)
com.ibm.ws.jsp.zosReCompile
Utilice la propiedad com.ibm.ws.jsp.zosReCompile para especificar cuántas veces debe intentar una hebra compilar un archivo JSP.
Una vez que la hebra obtiene el bloqueo para un archivo JSP, la hebra determina si dicho archivo está compilado. Si el archivo JSP no está compilado, la hebra intenta compilarlo.
Si la hebra no puede compilar el archivo JSP tras el número de intentos especificado, se emite un mensaje de error. La hebra no realiza ningún otro intento para compilar el archivo JSP.
Name | Valor predeterminado |
---|---|
Serie | 5 |
com.ibm.ws.webcontainer.allowDotsinName
Si el archivo estático tiene varios puntos consecutivos en el nombre, el servidor rechaza la solicitud como una solicitud prohibida.
Cuando se establece esta propiedad en true, se entrega el archivo solicitado.
Name | Valor predeterminado |
---|---|
com.ibm.ws.webcontainer.allowDotsinName | false |
com.ibm.ws.webcontainer.allowPrivAccessGetResource
La vía de acceso al archivo definida en la opción EDR (Extended Document Root) no se considera parte de los artefactos de aplicación instalados. Por lo tanto, para acceder al archivo son necesarios permisos adicionales. Se emite una excepción Java.security.AccessControlException: Acceso denegado (java.io.FilePermission) si no se proporcionan los permisos necesarios para este archivo en la aplicación web.
Cuando se establece esta propiedad en true, se permite el acceso de la aplicación al archivo cuya vía de acceso se ha definido en EDR.
Name | Valor predeterminado |
---|---|
com.ibm.ws.webcontainer.allowPrivAccessGetResource | false |
com.ibm.ws.webcontainer.AllowQueryParamWithNoEqual
Si el parámetro de consulta de un URL solo contiene la serie "name", en lugar del formato "name=value" esperado, el servidor devuelve el valor de request.getParameter("name") como un valor nulo.
Cuando se establece esta propiedad en true, si el parámetro de consulta de un URL solo contiene la serie "name", el servidor devuelve una serie vacía como el valor de la consulta request.getParameter("name")
Name | Valor predeterminado |
---|---|
com.ibm.ws.webcontainer.AllowQueryParamWithNoEqual | false |
com.ibm.ws.webcontainer.appendMetaInfResourcesInLooseLib
Esta propiedad elimina la vía de acceso adicional cuando se despliega una aplicación en una aplicación flexible y se utiliza principalmente en un entorno o servidor de desarrollo.
Name | Valor predeterminado |
---|---|
com.ibm.ws.webcontainer.appendMetaInfResourcesInLooseLib | false |
com.ibm.ws.webcontainer.asyncmaxsizetaskpool
Esta propiedad personalizada especifica el tamaño máximo de la cola de tareas que se utiliza para contener el servlet asíncrono asignado.
Name | Valor por omisión |
---|---|
com.ibm.ws.webcontainer.asyncmaxsizetaskpool | 5000 |
com.ibm.ws.webcontainer.asyncpurgeinterval
Esta propiedad personalizada especifica el intervalo en que el contenedor web depura la cola de tareas para liberar el recurso de las tareas canceladas.
Name | Valor por omisión |
---|---|
com.ibm.ws.webcontainer.asyncpurgeinterval | 30000 |
com.ibm.ws.webcontainer.channelwritetype
De manera predeterminada, el contenedor web utiliza escrituras asíncronas para escribir los datos de respuesta en fragmentos de hasta el tamaño del almacenamiento intermedio de la respuesta. Para respuestas grandes mayores que el tamaño del almacenamiento intermedio de la respuesta, el contenedor web sigue grabando en almacenamiento intermedio los datos de la respuesta en memoria mientras espera a que finalice una escritura asíncrona de un fragmento de datos de respuesta. Este proceso puede provocar que parte de una respuesta de gran tamaño se mantenga en la memoria, lo que puede provocar un uso elevado de la memoria y un posible error de falta de memoria. También puede producirse un error en el servidor de aplicaciones cuando un servidor procese simultáneamente más solicitudes que hebras definidas para el contenedor web.
Si la propiedad com.ibm.ws.webcontainer.channelwritetype se establece en sync, se utiliza la escritura síncrona, de lo contrario se utiliza de manera predeterminada la escritura asíncrona. Con la escritura síncrona, los datos de la respuesta se escriben de forma sincronizada en fragmentos con el tamaño máximo del valor de responsebuffersize y no se almacenan en la memoria los datos de la respuesta, mientras se espera a que finalice la escritura síncrona de un fragmento de datos de respuesta. Como resultado, el volumen máximo aproximado de datos de respuesta que se mantienen en memoria es igual a responsebuffersize multiplicado por el número de hebras del contenedor web. El número máximo de solicitudes que el contenedor web puede procesar simultáneamente está limitado por el número de hebras del contenedor web. Las solicitudes adicionales se ponen en cola, esperando a que se complete la escritura de una solicitud en proceso.
La propiedad personalizada de contenedor web responsebuffersize define la cantidad máxima de datos de respuesta que escribe el contenedor web en un fragmento a la vez, y por omisión es de 32k. Como consecuencia, se utiliza para cambiar el número de escrituras necesarias para que el contenedor web envíe datos de respuesta completos. No obstante, si una aplicación vacía los datos de respuesta, todos los datos de respuesta mantenidos por el contenedor web se escriben inmediatamente sea cual sea el valor de responsebuffersize.
Utilice el siguiente par nombre-valor para escribir fragmentos de datos utilizando escrituras síncronas.
Name | Valor predeterminado |
---|---|
com.ibm.ws.webcontainer.channelwritetype | async |
com.ibm.ws.webcontainer.checkEDRinGetRealPath
La API del Java Servlet ServletContext.getRealPath() no devuelve la vía de acceso correcta para un recurso solicitado cuando el recurso existe en una vía de acceso extendedDocumentRoot y no existe en la vía de acceso de la aplicación instalada. Si desea que la API de servlet Java ServletContext.getRealPath() busque el recurso solicitado en la vía de acceso extendedDocumentRoot si el recurso no se encuentra en la vía de acceso de la aplicación instalada, establezca la propiedad personalizada com.ibm.ws.webcontainer.checkEDRinGetRealPath en true.
Si esta propiedad se establece en true, y el recurso solicitado tampoco se encuentra en la vía de acceso extendedDocumentRoot, se devuelve un valor nulo.
Name | Valor predeterminado |
---|---|
com.ibm.ws.webcontainer.checkEDRinGetRealPath | false |
com.ibm.ws.webcontainer.copyattributeskeyset
Esta propiedad personalizada se utiliza en una situación en la que el método request.getAttributeNames devuelve una lista de valores. Si un servlet modifica la lista utilizando el método request.removeAttribute, las llamadas subsiguientes al método nextElement generan una excepción java.util.ConcurrentModificationException. Para permitir que el servlet modifique la lista, establezca la propiedad personalizada com.ibm.ws.webcontainer.copyattributeskeyset en true. Si se establece esta propiedad personalizada en true, se devuelve una copia de la lista de atributos, que permite al servlet modificar la lista sin que se genere ninguna excepción java.util.ConcurrentModificationException al llamar al método nextElement.
Name | Valor predeterminado |
---|---|
com.ibm.ws.webcontainer.copyattributeskeyset | false |
com.ibm.ws.webcontainer.decodeParamViaReqEncoding
Cuando el URI de solicitud de entrada no tiene la codificación UTF-8, pero se ha establecido la codificación de solicitud en UTF-8, los caracteres cuyos valores codificados son diferentes en ISO-8859 se mostrarán de forma incorrecta en la respuesta. Por ejemplo, si envía la solicitud mediante Microsoft Internet Explorer, los caracteres se mostrarán como caracteres de eñe (Ñ). Para asegurarse de que los caracteres se codifiquen y descodifiquen correctamente, basándose en el conjunto de codificación de solicitud, añada la propiedad personalizada del contenedor web com.ibm.ws.webcontainer.decodeParamViaReqEncoding a sus valores de contenedor web y establézcala en true.
Name | Valor predeterminado |
---|---|
com.ibm.ws.webcontainer.decodeParamViaReqEncoding | false |
com.ibm.ws.webcontainer.deferServingRequestsUntilEarStarted
Esta propiedad personalizada difiere el servicio de solicitudes hasta que se inicia el EAR (Enterprise Archive) completo.
Name | Valor predeterminado |
---|---|
com.ibm.ws.webcontainer.deferServingRequestsUntilEarStarted | false |
com.ibm.ws.webcontainer.deferServletRequestListenerDestroyOnError
Si esta propiedad personalizada se establece en true, el contenedor web habilita CDI para que funcione correctamente en las páginas de error personalizadas.
Name | Valor predeterminado |
---|---|
com.ibm.ws.webcontainer.deferServletRequestListenerDestroyOnError | false |
com.ibm.ws.webcontainer.disableSetCharacterEncodingAfterParametersRead
El contenedor web procesa un método setCharacterEncoding(String) de la API ServletRequest aunque se llame después de que se analicen los datos POST. Según la especificación Java Servlet, el contenedor web omite un método setCharacterEncoding(String) si se llama al método después de que los datos se han analizado.
Si desea que el contenedor web omita un método setCharacterEncoding(String) si se llama al método después de que se hayan analizado los datos, añada la propiedad personalizada com.ibm.ws.webcontainer.disableSetCharacterEncodingAfterParametersRead a los valores de configuración de contenedor web y establezca esta propiedad en true.
El valor predeterminado para esta propiedad es false.
Name | Valor predeterminado |
---|---|
com.ibm.ws.webcontainer.disableSetCharacterEncodingAfterParametersRead | false |
com.ibm.ws.webcontainer.disableStaticMappingCache
La propiedad personalizada com.ibm.ws.webcontainer.disableStaticMappingCache permite al usuario inhabilitar el almacenamiento en caché estática. Se puede establecer en la consola administrativa o mediante el parámetro de contexto en web.xml.
Para inhabilitar el almacenamiento en caché estática para todas las aplicaciones desplegadas, utilice un asterisco. Si desea inhabilitar el almacenamiento en caché estática para aplicaciones específicas, utilice una coma.
Por ejemplo, com.ibm.ws.webcontainer.disableStaticMappingCache=* inhabilita el almacenamiento en caché estática para todas las aplicaciones desplegadas. com.ibm.ws.webcontainer.disableStaticMappingCache=SpecialApp,RareApp inhabilita el almacenamiento en caché estática solo para estas dos aplicaciones.
También puede establecer un parámetro de contexto en web.xml para inhabilitar el almacenamiento en caché estática para la aplicación. El nombre del parámetro es com.ibm.ws.webcontainer.DISABLE_STATIC_MAPPING_CACHE y el valor del parámetro se establece en true.
No hay ningún valor predeterminado para esta propiedad.
Name | Valor predeterminado |
---|---|
com.ibm.ws.webcontainer.disableStaticMappingCache | ninguno |
com.ibm.ws.webcontainer.disableSystemAppGlobalListenerLoading
Si una aplicación del sistema es la primera en empezar, y la aplicación intenta cargar un escucha global en una biblioteca compartida asociada al cargador de clases del servidor, la aplicación no carga dicho escucha y evita que se cargue o que sea invocado por una aplicación posterior que no pertenezca al sistema. Establezca la propiedad personalizada com.ibm.ws.webcontainer.disableSystemAppGlobalListenerLoading en true para evitar que las aplicaciones del sistema carguen escuchas globales. Cuando esta propiedad se establece en true, la aplicación del sistema no trata de cargar los escuchas globales y las aplicaciones posteriores que no son del sistema los pueden cargar desde una biblioteca compartida asociada a un cargador de la clase del servidor.
Name | Valor predeterminado |
---|---|
com.ibm.ws.webcontainer.disableSystemAppGlobalListenerLoading | false |
com.ibm.ws.webcontainer.disablexPoweredBy
Cuando configure la seguridad de servidor, puede desactivar la cabecera X-Powered-By si no quiere revelar el servidor que está utilizando para la ejecución. Utilice esta propiedad personalizada para inhabilitar la cabecera X-Powered-By, que impide que ésta se envíe en la respuesta HTTP. El valor predeterminado es false. No obstante, puede establecerla en true, si desea inhabilitar esta cabecera.
Name | Valor predeterminado |
---|---|
com.ibm.ws.webcontainer.disablexPoweredBy | false |
com.ibm.ws.webcontainer.disallowAllFileServing
Utilice la propiedad personalizada com.ibm.ws.webcontainer.disallowAllFileServing para inhabilitar el servicio de archivos en todas las aplicaciones de un servidor de aplicaciones específico.
Puede habilitar el servicio de archivos a nivel global en un servidor de aplicaciones, utilizando la propiedad personalizada fileServingEnabled. No obstante, sobre la propiedad fileServingEnabled prevalece la información de despliegue específica de cada aplicación. Por lo tanto, la propiedad personalizada fileServingEnabled actual sólo se aplica como copia de seguridad en caso de que una aplicación no defina el valor fileServingEnabled.
Para alterar globalmente este valor en un servidor de aplicaciones específico y evitar que el servidor de aplicaciones dé servicio a archivos estáticos, independientemente de sus valores de despliegue específicos, establezca la propiedad personalizada com.ibm.ws.webcontainer.disallowAllFileServing del contenedor web en true utilizando el siguiente par de nombre-valor.
Name | Valor predeterminado |
---|---|
com.ibm.ws.webcontainer.disallowAllFileServing | false |
com.ibm.ws.webcontainer.disallowServeServletsByClassname
Cuando la propiedad ServeServletsByClassnameEnabled está habilitada, se puede acceder a los servlets directamente, lo que podría implicar un riesgo de seguridad. Defina la siguiente propiedad personalizada para impedir el uso de la propiedad ServeServletsByClassnameEnabled en todo el nivel del servidor de aplicaciones.
Name | Valor predeterminado | Valor válido |
---|---|---|
com.ibm.ws.webcontainer.disallowserveservletsbyclassname | true | false |
com.ibm.ws.webcontainer.discernUnavailableServlet
Generalmente, cuando el contenedor web recibe una excepción UnavailableException, no puede determinar si ésta ha sido emitida desde un servlet o desde un recurso asignado. Por consiguiente, el contenedor web marca de forma automática el servlet como no disponible aun cuando sea el recurso asignado el que no esté disponible.
Si utiliza la versión 7.0.0.5 o una versión posterior, y establece la propiedad personalizada com.ibm.ws.webcontainer.discernUnavailableServlet en el valor true, cualquier excepción UnavailableException que se emita desde un recurso asignado se colocará en un derivador. Este derivador permite al contenedor web determinar si la excepción se ha emitido desde el servlet o desde un recurso asignado. Si la excepción no se ha emitido desde el servlet, el contenedor web no marca el servlet como no disponible.
Name | Valor predeterminado |
---|---|
com.ibm.ws.webcontainer.discernUnavailableServlet | false |
com.ibm.ws.webcontainer.dispatcherRethrowSER
RequestDispatcher devuelve las excepciones desde los servlets asignados a los servlets de asignación. Este es un cambio de comportamiento en relación con los releases anteriores. Si no desea que la aplicación devuelva las excepciones al servlet que está realizando la asignación, añada la propiedad personalizada com.ibm.ws.webcontainer.dispatcherRethrowSER a los valores del contenedor web y establezca la propiedad en false.
Name | Valor predeterminado |
---|---|
com.ibm.ws.webcontainer.dispatcherRethrowSER | true |

com.ibm.ws.webcontainer.dispatcherRethrowSError
Cuando un archivo JSP (JavaServer Page) contiene un error de compilación, el contenedor captura y maneja directamente el error de tiempo de ejecución. El recurso JSP asignado no propaga ni direcciona las excepciones. Con la propiedad personalizada com.ibm.ws.webcontainer.dispatcherRethrowSError, las excepciones se vuelven a propagar al recurso JSP asignado.
Name | Valor predeterminado |
---|---|
com.ibm.ws.webcontainer.dispatcherRethrowSError | false |

![[z/OS]](../images/ngzos.gif)
com.ibm.ws.webcontainer.divertrecursiveexceptiontoerrorlog
Cuando se produce un error recursivo en una aplicación, el mensaje de excepción lo registra el método de auditoría de rastreo, que dirige el mensaje a la consola del sistema. Si necesita que el mensaje se registre en el registro cronológico de errores, añada la propiedad personalizada com.ibm.ws.webcontainer.divertrecursiveexceptiontoerrorlog a los valores de configuración del contenedor web y establezca la propiedad en true. Cuando la propiedad com.ibm.ws.webcontainer.divertrecursiveexceptiontoerrorlog se establece en true, los mensajes de excepción se envían al registro de errores en lugar de a la consola del sistema.
Name | Valor predeterminado |
---|---|
com.ibm.ws.webcontainer.divertrecursiveexceptiontoerrorlog | false |
com.ibm.ws.webcontainer.donotservebyclassname
La propiedad personalizada com.ibm.ws.webcontainer.donotservebyclassname especifica una lista de clases a las que no puede dar servicio el nombre de clase.
Name | Valor predeterminado |
---|---|
com.ibm.ws.webcontainer.donotservebyclassname | ninguno |
com.ibm.ws.webcontainer.emptyServletMappings
Si se establece en true, la propiedad personalizada com.ibm.ws.webcontainer.emptyServletMappings devuelve una recopilación vacía cuando el método getMappings() solicita correlaciones de servlet y no se ha añadido todavía ninguna correlación.
Name | Valor predeterminado |
---|---|
com.ibm.ws.webcontainer.emptyServletMappings | false |
com.ibm.ws.webcontainer.enabledefaultservletrequestpathelements
Valor | Valor de vía de acceso de servlet | Valor de PathInfo |
---|---|---|
true | Establecer el contenido en el URI después de la vía de acceso de contexto | Establecer en un valor nulo |
false (valor predeterminado) | Establecer en una serie vacía | Establecer en función del contenido en el URI después de la vía de acceso de contexto |
com.ibm.ws.webcontainer.enableErrorExceptionTypeFirst
- Cualquier página de error con código de error coincidente
- Cualquier página de error con tipo de error coincidente
La página de error con código de error coincidente se devuelve siempre, incluso si también existe una página de error con tipo de excepción coincidente definida en el archivo web.xml. Para que el contenedor web busque y utilice el tipo de excepción antes que el código de error, establezca esta propiedad en true.
Name | Valor predeterminado |
---|---|
com.ibm.ws.webcontainer.enableErrorExceptionTypeFirst | false |
com.ibm.ws.webcontainer.enableExactMatchJSecurityCheck
Especifique esta propiedad si desea permitir que se utilice la palabra clave j_security_check como parte del nombre de un recurso. Normalmente, si un URI contiene la palabra clave j_security_check, se inicia el proceso de inicio de sesión.
Name | Valor predeterminado |
---|---|
com.ibm.ws.webcontainer.enableExactMatchJSecurityCheck | false |
com.ibm.ws.webcontainer.enableJspMappingOverride
Cuando se define un url-pattern en el grupo jsp-property-group del archivo web.xml, normalmente se suele correlacionar y gestionar en el motor JSP (JavaServer Page). Si tiene aplicaciones que deben alterar temporalmente esta correlación para poder manejar y dar servicio al contenido JSP por su cuenta, establezca la propiedad com.ibm.ws.webcontainer.enableJspMappingOverride en true.
Name | Valor predeterminado |
---|---|
com.ibm.ws.webcontainer.enableJspMappingOverride | false |
com.ibm.ws.webcontainer.enableMultiReadOfPostData
Defina la propiedad personalizada com.ibm.ws.webcontainer.enableMultiReadOfPostData en true si desea habilitar varias lecturas de datos de publicación. Cuando esta propiedad se establece en true, los datos POST se pueden leer varias veces como InputStream o Reader y como parámetros.
- Obtener la InputStream o el Reader
- Leer los datos
- Cerrar la InputStrean o el Reader
Si la primera o la tercera acción no tiene lugar, la siguiente lectura de los datos POST no se restablece al principio de esos datos.
El contenedor web ejecuta esta secuencia de forma automática si una aplicación vuelve a leer los datos POST como parámetros.
Name | Valor predeterminado |
---|---|
com.ibm.ws.webcontainer.enableMultiReadOfPostData | false |
com.ibm.ws.webcontainer.excludehandledtypesclasses
Utilice la propiedad personalizada com.ibm.ws.webcontainer.excludehandledtypesclasses para que no se pasen las clases de tipos de descriptor en el método onStartup de la clase de implementación ServletContainerInitializer.
Name | Valor predeterminado |
---|---|
com.ibm.ws.webcontainer.excludehandledtypesclasses | false |
com.ibm.ws.webcontainer.extractHostHeaderPort and trusthostheaderport
- Número de puerto del URL solicitado
- Número de puerto de la cabecera del host solicitado
trusthostheaderport = true
com.ibm.ws.webcontainer.extractHostHeaderPort = true

Name | Valor predeterminado |
---|---|
com.ibm.ws.webcontainer.extractHostHeaderPort | false |
trusthostheaderport | false |
![[z/OS]](../images/ngzos.gif)
com.ibm.ws.webcontainer.fileWrapperEvents
Los archivos estáticos los gestiona un derivador de archivos que no genera datos SMF y PMI para archivos estáticos. En la versión 5.1, el proceso de archivos estáticos se realiza mediante SimpleFileServlet, que genera datos SMF y PMI. Si está migrando desde la Versión 5.1 y tiene que generar datos SMF y PMI cuando sirva archivos estáticos, añada la propiedad personalizada com.ibm.ws.webcontainer.fileWrapperEvents a los valores de configuración del contenedor web y establezca la propiedad en true.
Name | Valor predeterminado |
---|---|
com.ibm.ws.webcontainer.fileWrapperEvents | false |
![[z/OS]](../images/ngzos.gif)
com.ibm.ws.webcontainer.FileWrapperEventsLessDetail
El registro SMF tipo 120 muestra el nombre del recurso estático en lugar de FileServletWrapper en el campo de nombre de un informe de archivo estático. Si ha migrado de una versión anterior del producto y desea que el registro SMF de tipo 120 muestre FileServletWrapper en el campo de nombre de un informe de archivo estático, añada la propiedad personalizada com.ibm.ws.webcontainer.FileWrapperEventsLessDetail a los valores de configuración del contenedor web y establézcala en true.
Name | Valor predeterminado |
---|---|
com.ibm.ws.webcontainer.FileWrapperEventsLessDetail | false |
com.ibm.ws.webcontainer.finishresponseonclose
Utilice la propiedad personalizada com.ibm.ws.webcontainer.finishresponseonclose para indicar que desea que el contenedor web cierre una conexión cuando un servlet llame a close() en una secuencia de salida o transcriptor.
Normalmente, cuando un servlet llama a close() en una secuencia de grabador o de salida, el contenedor web devuelve al cliente los datos escritos en la corriente del grabador o de salida y, a continuación, espera a que el método service() de servlet finalice antes de que cierre la conexión. Este retardo puede interpretarse como una demora de finalización de respuesta, especialmente si un método service() de servlet no finaliza hasta poco después de que se cierre la secuencia de grabador o salida.
Name | Valor predeterminado |
---|---|
com.ibm.ws.webcontainer.finishresponseonclose | false |
com.ibm.ws.webcontainer.ForceDifferentCookiePaths
Al configurar una aplicación para que utilice una cookie para rastrear la sesión, la vía de acceso predeterminada de la cookie se establece en la raíz de contexto de la aplicación. Por consiguiente, la cookie sólo se envía a solicitudes que se han hecho a esta aplicación. Para cambiar la vía de acceso predeterminada a "/" (barra inclinada) de manera que la cookie se envíe a las de solicitudes para cualquier aplicación de este dominio, establezca la propiedad personalizada de gestor de sesiones ForceDifferentCookiePaths.
Name | Valor predeterminado |
---|---|
com.ibm.ws.webcontainer.ForceDifferentCookiePaths | false |
com.ibm.ws.webcontainer.handlingRequestWithOverridenPath
Cuando una aplicación altera la pathinfo del URI, el servidor no utiliza la vía de acceso alterada temporalmente para dar servicio a la solicitud, sino que utiliza la pathinfo del URI de la solicitud original. Si desea que el servidor utilice la vía de acceso del URI alterada temporalmente, establezca com.ibm.ws.webcontainer.handlingRequestWithOverridenPath en true. Normalmente, cuando una aplicación altera temporalmente la vía de acceso del URI, dicha vía de acceso de URI la utiliza la aplicación y no así el servidor.
Name | Valor predeterminado |
---|---|
com.ibm.ws.webcontainer.handlingRequestWithOverridenPath | false |
com.ibm.ws.webcontainer.HTTPOnlyCookies

- * - Un valor de asterisco indica que se asigna a todas las cookies el atributo HTTPOnly.
- Una lista delimitada por comas de las cookies específicas a las que se asigna atributo HTTPOnly. Las cookies pueden contener caracteres comodín. El atributo HTTPOnly sólo se asigna a las cookies coincidentes incluidas en esta lista.
com.ibm.ws.webcontainer.HTTPOnlyCookies=*
com.ibm.ws.webcontainer.HTTPOnlyCookies=cookieName1,Account3Cookie,JsessionID

Dado que el atributo HTTPOnly se establece ahora utilizando el campo Establecer cookies de seguridad como HTTPOnly para resistir ataques de scripts entre sitios en la consola administrativa, si necesita inhabilitar esta función, en la consola administrativa, pulse Tipos de servidor > Servidores de aplicaciones > Gestión de sesiones > Cookies y deseleccione el campo Establecer cookies de seguridad como HTTPOnly para resistir ataques de scripts entre sitios.
trnsPara obtener más información sobre la interacción de estas dos propiedades personalizadas, consulte Valores de cookies y Consideraciones sobre las características de habilitación y migración de la protección de la seguridad.
Name | Valor predeterminado |
---|---|
com.ibm.ws.webcontainer.HTTPOnlyCookies | ninguno |
com.ibm.ws.webcontainer.ignoreinjectionfailure
Si un recurso o una inyección Enterprise JavaBeans (EJB) falla durante el proceso de inicialización del servlet, se graba un mensaje de error en los archivos de registro del servidor. No obstante, el mensaje de error no se propaga al cliente. Además, el servlet se pone en servicio y no se reinicializa hasta que se reinicia la aplicación. Durante este tiempo, si no se recibe una solicitud que hace referencia al recurso, que ha fallado anteriormente la inyección, se produce una excepción NullPointerException. Del mismo modo, este problema puede producirse durante los procesos de inicialización de filtros y escuchas.
La propiedad personalizada com.ibm.ws.webcontainer.ignoreinjectionfailure permite especificar si se van a propagar estos mensajes de error y si se va a utilizar un servlet. De forma predeterminada, la propiedad personalizada se establece en false, que conserva el comportamiento descrito anteriormente. Para habilitar la propagación de estas excepciones de inyección al cliente y no poner el servlet en servicio, debe dejar esta propiedad personalizada establecida en false.
Name | Valor predeterminado |
---|---|
com.ibm.ws.webcontainer.ignoreinjectionfailure | false |
com.ibm.ws.webcontainer.ignoreInvalidQueryString
Cuando el contenedor web detecta un carácter de codificación en un par de serie de consulta que no es válido, emite una excepción IllegalArgumentException y, de forma predeterminada, ignora toda la serie de consulta. En las aplicaciones en las que cada campo de la serie de consulta es un recurso esencial, es posible que no sea aconsejable ignorar toda la serie de consulta. Si establece la propiedad personalizada com.ibm.ws.webcontainer.ignoreInvalidQueryString en true, el contenedor web ignora los pares de serie de consulta que no son válidos y continúa procesando los pares de serie de consulta válidos.
Name | Valor predeterminado |
---|---|
com.ibm.ws.webcontainer.ignoreInvalidQueryString | false |
com.ibm.ws.webcontainer.ignorePostConstructOverriddenMethod
Si una subclase altera temporalmente un método @PostConstruct anotado de una clase padre, cuando se invoca el método anotado de la subclase de destino, el contenedor web invoca dos veces la subclase de destino. Si establece la propiedad personalizada com.ibm.ws.webcontainer.ignorePostConstructOverriddenMethod en true, el contenedor web invoca el método de subclase de destino solo una vez, y se omite cualquier método alterado temporalmente del padre.
Name | Valor predeterminado |
---|---|
com.ibm.ws.webcontainer.ignorePostConstructOverriddenMethod | false |
com.ibm.ws.webcontainer.ignoreSemiColonOnRedirectToWelcomePage
Si esta propiedad se establece en true, el contenedor web omite el punto y coma y todo lo que sigue durante la redirección a la página de bienvenida.
Name | Valor predeterminado |
---|---|
com.ibm.ws.webcontainer.ignoreSemiColonOnRedirectToWelcomePage | false |
com.ibm.ws.webcontainer.IgnoreSessiononStaticFileRequest
El contenedor web accede a una sesión para las solicitudes de archivos estáticos que implican filtros. Esta acción puede generar una degradación del rendimiento, por ejemplo, cuando se ejecuta con la persistencia de sesiones de base de datos. Si establece la propiedad personalizada com.ibm.ws.webcontainer.IgnoreSessiononStaticFileRequest en true, el contenedor web no puede acceder a una sesión para las solicitudes de archivos estáticos que impliquen filtros.
Name | Valor predeterminado |
---|---|
com.ibm.ws.webcontainer.IgnoreSessiononStaticFileRequest | false |
com.ibm.ws.webcontainer.initFilterBeforeInitServlet
Establezca la propiedad personalizada com.ibm.ws.webcontainer.initFilterBeforeInitServlet en true para inicializar filtros antes de inicializar servlets de tipo "cargar al iniciar" durante el proceso de inicio de una aplicación.

Name | Valor predeterminado |
---|---|
com.ibm.ws.webcontainer.initFilterBeforeInitServlet | false |
com.ibm.ws.webcontainer.invokeFilterAfterService
La propiedad personalizada com.ibm.ws.webcontainer.invokeFilterAfterService garantiza que el contenedor web no invoque el flush() anómalo cuando se cierra OutputStream.
Name | Valor predeterminado |
---|---|
com.ibm.ws.webcontainer.invokeFilterAfterService | true |
com.ibm.ws.webcontainer.invokeFilterInitAtStartup
La propiedad personalizada com.ibm.ws.webcontainer.invokeFilterInitAtStartup permite al contenedor web invocar el método init e inicializar un filtro durante el proceso de arranque de una aplicación.
Name | Valor predeterminado |
---|---|
com.ibm.ws.webcontainer.invokeFilterInitAtStartup | false |
com.ibm.ws.webcontainer.KeepUnreadPostDataAfterResponseSentToClient
Esta propiedad indica si los datos publicados están disponibles para su lectura después de que se complete la respuesta del cliente, después de que se complete una solicitud de reenvío, o un retorno desde un sendRedirect. Si esta propiedad se establece en true, los datos de envío estarán disponibles para lectura una vez completada la respuesta del cliente, ya sea a continuación de una solicitud de reenvío, que es el comportamiento predeterminado, o de una devolución de sendRedirect, que se produce cuando la propiedad personalizada com.ibm.ws.webcontainer.SendResponseToClientAsPartOfSendRedirect está establecida en true. Sin embargo, para establecer esta propiedad en true es necesario que los datos publicados no leídos se alojen en la memoria hasta que se complete el recurso de destino y aumente el uso de memoria.
Name | Valor predeterminado |
---|---|
com.ibm.ws.webcontainer.KeepUnreadPostDataAfterResponseSentToClient | false |
com.ibm.ws.webcontainer.logServletContainerInitializerClassloadingErrors
Al examinar las clases de una aplicación para ver si coinciden con alguno de los criterios que especifica la anotación HandlesTypes de un ServletContainerInitializer, puede que el contenedor sufra problemas de carga de clases si faltan uno o más de los archivos JAR de aplicación opcionales. Puesto que el contenedor no decide si estos tipos de errores de carga de clases impiden que la aplicación funcione correctamente, ignora los errores y proporciona una opción de configuración que los registra.
Si esta propiedad se establece en true se activa el registro.
Name | Valor predeterminado |
---|---|
com.ibm.ws.webcontainer.logServletContainerInitializerClassloadingErrors | false |
com.ibm.ws.webcontainer.mapFiltersToAsterisk
Cuando el contenedor web procesa una solicitud, reconoce las correlaciones del servlet "*" como las mismas correlaciones de servlet que "/*". Para proporcionar el mismo comportamiento con correlación de filtro, establezca la propiedad personalizada com.ibm.ws.webcontainer.mapFiltersToAsterisk en true. Establecer la propiedad personalizada com.ibm.ws.webcontainer.mapFiltersToAsterisk en true el contenedor web reconoce las correlaciones de filtros "*" como una correlación de filtro "/*". Esta propiedad personalizada no es sensible a las mayúsculas/minúsculas.
Name | Valor predeterminado |
---|---|
com.ibm.ws.webcontainer.mapFiltersToAsterisk | false |
com.ibm.ws.webcontainer.maxParamPerRequest
Puede utilizar esta propiedad para cambiar el número máximo de parámetros permitidos en las solicitudes de entrada, en función de las aplicaciones y el entorno. El valor predeterminado del número máximo de parámetros permitidos por solicitud de entrada (GET o POST) es 10000.
Puede establecer esta propiedad en -1 si no desea limitar el número de parámetros que se pueden incluir en una solicitud.
Name | Valor predeterminado |
---|---|
com.ibm.ws.webcontainer.maxParamPerRequest | 10000 |
com.ibm.ws.webcontainer.metainfresourcescachesize
Puede utilizar esta propiedad para cambiar el número de entradas en la memoria caché de recursos META-INF. El valor predeterminado de esta propiedad es 20.
Name | Valor predeterminado |
---|---|
com.ibm.ws.webcontainer.metainfresourcescachesize | 20 |
com.ibm.ws.webcontainer.modifiedFileNotFoundExceptionBehavior
Cuando un archivo no existe y es el destino de una operación include o forward para un asignador de solicitudes, se produce una excepción FileNotFoundException. Para habilitar esta excepción de "archivo no encontrado", establezca esta propiedad personalizada en true, lo que permite que se emita la excepción cuando un archivo no existe. Si establece esta propiedad en false, se suprime la excepción FileNotFoundException y no se registra el error. Además, si esa solicitud genera una excepción 404, ya no se crean los FFDC.
Name | Valor predeterminado |
---|---|
com.ibm.ws.webcontainer.modifiedFileNotfFoundExceptionBehavior | true |
com.ibm.ws.webcontainer.ModifiedSinceLaterThanFileTimeStamp
Cuando esta propiedad se establece en true, el contenedor web devuelve una respuesta 304 si la indicación de fecha y hora de If-Modified-Since de la variante solicitada es más reciente que la indicación de fecha y hora de la variante de destino.
Name | Valor predeterminado |
---|---|
com.ibm.ws.webcontainer.ModifiedSinceLaterThanFileTimeStamp | false |
com.ibm.ws.webcontainer.normalizerequesturi
Normalmente no se producen errores URI 404 de solicitud si el URI de la solicitud se emite desde un navegador, ya que la mayor parte de navegadores modernos normalizan automáticamente el URI de la solicitud antes de llamar a WebSphere Application Server. Por lo tanto, de forma predeterminada, el contenedor web no normaliza el URI de la solicitud antes de intentar resolver dicho URI a una correlación de aplicación y servlet.
Un URI de solicitud, que incluye /./ o /../ como parte del contexto de la aplicación, que no se haya normalizado puede dar lugar a un error 404. De forma parecida, un URI de solicitud que incluya /./ o /../ como parte de una vía de acceso de servlet, y que no haya sido normalizado, no podrá establecer una coincidencia en una correlación de servlets, lo que también dará lugar a un error 404, aun cuando el URI se haya normalizado antes de resolver el URI en un archivo JSP (JavaServer Pages) o en un archivo estático.
Puede establecer la propiedad personalizada com.ibm.ws.webcontainer.normalizerequesturi en true y el contenedor web normaliza estos tipos de URI de solicitud.
Name | Valor predeterminado |
---|---|
com.ibm.ws.webcontainer.normalizerequesturi | false |
com.ibm.ws.webcontainer.parseUTF8PostData
Si el contenedor web intenta procesar una solicitud que incluye datos de envío UTF-8 que no codificados para URL, el recurso de destino accede a los datos de envío como parámetros. Sin embargo, los datos UTF-8 no se decodifican correctamente y los datos resultantes podrían perderse.
Para resolver este problema, establezca la propiedad personalizada com.ibm.ws.webcontainer.parseUTF8PostData en true. Cuando el contenedor web procesa parámetros, detecta los datos de publicación UTF-8 que no están codificados en URL e incluye los datos en los valores de parámetro.
Para utilizar esta función, debe establecer el valor en true.
Name | Valor predeterminado |
---|---|
com.ibm.ws.webcontainer.parseUTF8PostData | false |
com.ibm.ws.webcontainer.preserveRequestParameterValues
Utilice esta propiedad personalizada para conservar los valores originales de los valores de parámetro utilizados en la solicitud.
El método javax.servlet.ServletRequest.getParameterValues() devuelve una matriz de tipo String (Serie) de los valores de parámetro de solicitud. Si esta matriz de tipo String se modifica directamente, los valores de los parámetros de la solicitud original se pueden perder. Las llamadas posteriores al método javax.servlet.ServletRequest.getParameterValues() devuelven los valores modificados.
Para utilizar esta función, debe establecer el valor en true.
Name | Valor predeterminado |
---|---|
com.ibm.ws.webcontainer.preserveRequestParameterValues | false |
com.ibm.ws.webcontainer.provideQStringToWelcomeFile
Normalmente, cuando una solicitud se envía inicialmente a la raíz de contexto de la aplicación, la solicitud se reenvía a un archivo de bienvenida. Si se incluye una serie de consulta en una solicitud inicial, no estará disponible para el archivo de bienvenida si ha incluido el atributo request.getquerystring(atributo) en el archivo de bienvenida. No obstante, la serie de consulta estará disponible para el archivo de bienvenida si ha incluido el atributo javax.servlet.forward.query_string en el archivo de bienvenida.
Si debe utilizar el atributo request.getQueryString(), en lugar del atributo javax.servlet.forward.query_string, para hacer que la serie de consulta esté disponible para el archivo de bienvenida, añada la propiedad personalizada com.ibm.ws.webcontainer.provideQStringToWelcomeFile a la configuración del contenedor web, y establezca la propiedad en true.
Name | Valor predeterminado |
---|---|
com.ibm.ws.webcontainer.provideQStringToWelcomeFile | false |
com.ibm.ws.webcontainer.RedirectWithPathInfo
Cuando la ubicación de redirección proporcionada es un URL relativo y no incluye una barra inclinada inicial, ("/"), durante la conversión del valor del URI relativo en un URL absoluto, el servidor elimina la pathInfo del URI existente. Para asegurarse de que se conserva pathInfo y no se elimina, establezca com.ibm.ws.webcontainer.RedirectWithPathInfo en true.
Name | Valor predeterminado |
---|---|
com.ibm.ws.webcontainer.RedirectWithPathInfo | false |
com.ibm.ws.webcontainer.removeAttributeForNullObject
De forma predeterminada, el método getAttributeNames() puede devolver un nombre de atributo cuyo valor se ha establecido en nulo si el valor pasado a los métodos ServletRequest.setAttribute() o ServleContextt.setAttribute() es nulo. Este comportamiento predeterminado no concuerda con el de la API.
Si desea que el contenedor web elimine el atributo si el objeto nulo se pasa al método ServletRequest.setAttribute() o ServleContextt.setAttribute (), añada esta propiedad personalizada com.ibm.ws.webcontainer.removeAttributeForNullObject a la configuración del contenedor web y establezca la propiedad en true.
Tipo de datos | Serie |
---|---|
Booleano | false |
com.ibm.ws.webcontainer.returnDefaultContextPath
Utilice la propiedad personalizada com.ibm.ws.webcontainer.returnDefaultContextPath para devolver la vía de acceso al contexto correcto cuando se instale una aplicación en la raíz de contexto predeterminada. Por ejemplo, cuando se establece la propiedad en true, la vía de acceso al contexto se establece como una serie vacía para cualquier aplicación que esté instalada en la raíz de contexto predeterminada.
Tipo de datos | Serie |
---|---|
Booleano | False |
com.ibm.ws.webcontainer.searchMetaInfResourcesDuringAppStart
Utilice la propiedad personalizada com.ibm.ws.webcontainer.searchMetaInfResourcesDuringAppStart para inhabilitar la característica mejorada durante la búsqueda de /META-INF/resources.
Tipo de datos | Serie |
---|---|
Booleano | True |
com.ibm.ws.webcontainer.SendResponseToClientAsPartOfSendRedirect
Esta propiedad indica si una respuesta se completa como parte de una solicitud sendRedirect. Si esta propiedad se establece en true, una respuesta se completa como parte de una solicitud sendRedirect y los datos de envío asociados a la solicitud no están disponibles para lectura en la devolución de sendRedirect.
El valor predeterminado es false.
Name | Valor predeterminado |
---|---|
com.ibm.ws.webcontainer.SendResponseToClientAsPartOfSendRedirect | false |
com.ibm.ws.webcontainer.SendResponseToClientWhenResponseIsComplete
Esta propiedad indica si una respuesta se completa en la devolución de una solicitud de reenvío.
Si esta propiedad se establece en false, no se completa una respuesta en la devolución de una solicitud de reenvío. En su lugar, se retrasará hasta que el recurso de destino finalice. Los datos de envío están disponible para lectura una vez completado el reenvío.
Name | Valor predeterminado |
---|---|
com.ibm.ws.webcontainer.SendResponseToClientAsPartOfSendRedirect | true |
com.ibm.ws.webcontainer.setAsyncDispatchRequestURI
Si esta propiedad se establece en true, el contenedor web establecerá el URI de solicitud actual como el destino de la asignación asíncrona.
Name | Valor predeterminado |
---|---|
com.ibm.ws.webcontainer.setAsyncDispatchRequestURI | false |
com.ibm.ws.webcontainer.setcontenttypebysetheader
Cuando está habilitado autoResponseEncoding o cuando se establece la propiedad com.ibm.ws.webcontainer.contentTypeCompatibility, el servidor de aplicaciones establece el tipo de contenido de la respuesta mediante un método interno. Para habilitar el valor de content-type utilizando el método ServletResponse.setContentType en su lugar, debe definir la propiedad personalizada com.ibm.ws.webcontainer.setcontenttypebysetheader en false.
Name | Valor predeterminado |
---|---|
com.ibm.ws.webcontainer.setcontenttypebysetheader | true |
com.ibm.ws.webcontainer.ServeWelcomeFileFromExtendedDocumentRoot
Normalmente, la primera vez que el contenedor web maneja una solicitud de una página de bienvenida estática que no es un archivo JSP (JavaServer Pages), el contenedor web no busca la ExtendedDocumentRoot del archivo de bienvenida a menos que la solicitud de ese archivo de bienvenida sea totalmente cualificada. Si la solicitud es totalmente cualificada, el contenedor web sirve el archivo de bienvenida y la raíz de contexto de la aplicación muestra el archivo de bienvenida. Si la solicitud del archivo de bienvenida estático no es totalmente cualificada, el contenedor web devuelve un error 404, que indica que el contenedor web no ha encontrado el archivo de bienvenida.
Después de que el contenedor web sirva correctamente un archivo de bienvenida, el contenedor web crea una correlación para ese archivo de bienvenida. A continuación, el contenedor web utiliza esta correlación para manejar solicitudes futuras para el archivo de bienvenida, eliminando así la necesidad de que las solicitudes posteriores sean totalmente cualificadas.
Si desea que el contenedor web busque buscar siempre un archivo de bienvenida en una ExtendedDocumentRoot definida por la aplicación, incluso si la solicitud no está totalmente calificada, puede añadir la propiedad personalizada com.ibm.ws.webcontainer.ServeWelcomeFileFromExtendedDocumentRoot para los valores del contenedor web y establecer esta propiedad en true.
Name | Valor predeterminado |
---|---|
com.ibm.ws.webcontainer.ServeWelcomeFileFromExtendedDocumentRoot | false |
com.ibm.ws.webcontainer.ServletDestroyWaitTime
De forma predeterminada, cuando se detiene una aplicación el contenedor web espera 60 segundos para que finalicen las solicitudes activas de un recurso de dicha aplicación. Ahora puede definir la propiedad personalizada com.ibm.ws.webcontainer.ServletDestroyWaitTime del contenedor web para controlar el tiempo durante el que éste debe esperar a que finalice una solicitud activa cuando se detiene una aplicación de su propiedad.
Establezca la propiedad personalizada com.ibm.ws.webcontainer.ServletDestroyWaitTime en un valor entero, que indica el número de segundos durante los que se esperará a que finalice una solicitud. El valor predeterminado es de 60 segundos.
Name | Valor predeterminado |
---|---|
com.ibm.ws.webcontainer.ServletDestroyWaitTime | 60 |
com.ibm.ws.webcontainer.setUnencodedHTMLinsendError
Normalmente, el contenedor web codifica los mensajes de error especificados antes de formatearlos para evitar ataques de scripts de sitios cruzados (XSS) en el cliente si la aplicación no limpia esos mensajes. Sin embargo, la especificación Java Servlet para el método sendError(int, String) indica que el servidor debe crear la respuesta para que tenga un aspecto similar a una página de error de servidor con formato HTML.
Si no desea que el contenedor web codifique los mensajes de error especificados antes de darles formato, añada la propiedad personalizada com.ibm.ws.webcontainer.setUnencodedHTMLinsendError a los valores de configuración del contenedor web y establezca la propiedad en true.
Name | Valor predeterminado |
---|---|
com.ibm.ws.webcontainer.setUnencodedHTMLinsendError | false |
com.ibm.ws.webcontainer.skipInputStreamReadOnError
Si esta propiedad se establece en true, el contenedor web deja de leer los datos de POST restantes si existe una excepción antes o durante el análisis de los datos de POST.
La propiedad personalizada com.ibm.ws.webcontainer.skipInputStreamReadOnError se debe utilizar junto con la propiedad personalizada de canal preventRequestBodyPurge establecida en true.
Name | Valor predeterminado |
---|---|
com.ibm.ws.webcontainer.skipInputStreamReadOnError | false |
com.ibm.ws.webcontainer.SkipMetaInfResourcesProcessing
El contenedor web busca archivos estáticos y archivos JavaServer Pages (JSP) en ubicaciones diferentes, dependiendo de la configuración de la aplicación. Un fragmento web comprende un archivo JAR de un directorio WEB-INF/lib de la aplicación. El JAR puede incluir recursos estáticos de un directorio META-INF/resources que se definen dentro del archivo JAR. Para evitar que el contenedor web busque en directorios META-INF/resources, establezca la propiedad personalizada com.ibm.ws.webcontainer.SkipMetaInfResourcesProcessing del contenedor web en true.
El valor predeterminado para la propiedad personalizada es false.
Name | Valor predeterminado |
---|---|
com.ibm.ws.webcontainer.SkipMetaInfResourcesProcessing | false |
com.ibm.ws.webcontainer.suppressheadersinrequest
La propiedad personalizada com.ibm.ws.webcontainer.suppressheadersinrequest puede utilizarse para suprimir la inclusión de cabeceras de solicitud que empiezan por caracteres especiales, como "$" o "_". Algunas aplicaciones no manejan cabeceras de solicitud que empiezan por caracteres especiales.
El valor especificado para esta propiedad personalizada es una lista delimitada de prefijos de cabeceras que desea suprimir.
Ejemplo:
com.ibm.ws.webcontainer.suppressheadersinrequest=$WS,_WS
Name | Valor predeterminado |
---|---|
com.ibm.ws.webcontainer.suppressheadersinrequest | ninguno |
com.ibm.ws.webcontainer.suppressHtmlRecursiveErrorOutput
Durante un error recursivo que una página de error especificada por la aplicación no puede manejar, la pila de rastreo y el mensaje de error se muestran como página web. Esta información incluye nombres de clases e información de programa que el desarrollador de aplicaciones no desea que se exponga ante el usuario.
Puede establecer la propiedad personalizada de contenedor web com.ibm.ws.webcontainer.suppressHtmlRecursiveErrorOutput para suprimir la salida HTML del texto de error, sin cambiar las anotaciones internas del mensaje. Establezca la propiedad personalizada com.ibm.ws. webcontainer.suppressHtmlRecursiveErrorOutput en true para inhabilitar la salida HTML del mensaje de error al usuario y presentarle una página en blanco con un código de error 500.
Name | Valor predeterminado |
---|---|
com.ibm.ws.webcontainer.suppressHtmlRecursiveErrorOutput | false |
com.ibm.ws.webcontainer.suppressLastZeroBytePackage
Por lo general, el último fragmento de byte cero se utiliza para indicar a un cliente el final de los datos de respuesta en una transmisión codificada fragmentada. Algunas aplicaciones utilizan este último cero para determinar cuándo se reciben los datos de respuesta y pueden empezar a procesarlos. Si se produce un error en la aplicación después de que se envíen las cabeceras de respuesta, el último fragmento de los datos se sigue enviando al cliente. Puede que el cliente no percate de que se ha producido un error e intente procesar los datos incompletos.
Si establece la propiedad personalizada com.ibm.ws.webcontainer.suppressLastZeroBytePackage en true, si se produce un error en la aplicación después de que se envíen las cabeceras de respuesta, el último fragmento de datos no se envía al cliente.
Name | Valor predeterminado |
---|---|
com.ibm.ws.webcontainer.suppressLastZeroBytePackage | false |
com.ibm.ws.webcontainer.suppressLoggingFileNotFoundExceptions
El contenedor web genera un mensaje de error grave con un seguimiento de la pila FileNotFoundException en los registros de la máquina virtual Java (JVM) cuando se solicita un archivo que falta. Podría no tratarse de un error grave si se ha solicitado el archivo incorrecto de forma accidental. Establezca esta propiedad en true para generar un mensaje de aviso en los registros JVM en lugar de un mensaje de error grave cuando no se encuentre un archivo.
Name | Valor predeterminado |
---|---|
com.ibm.ws.webcontainer.suppressLoggingFileNotFoundExceptions | false |
com.ibm.ws.webcontainer.suppressLoggingWebGroupVhostNotFound
Se establece en true para suprimir el mensaje SRVE0255E de SystemOut.log.
Esta propiedad personalizada sólo se admite en una serie sin ningún carácter comodín (*).
Name | Valor predeterminado |
---|---|
com.ibm.ws.webcontainer.suppressLoggingWebGroupVhostNotFound | ninguno |
com.ibm.ws.webcontainer.suppressServletExceptionLogging
Si un servlet crea una excepción, se registra en la consola del sistema. Si no desea que el contenedor web registre excepciones creadas por servlets, añada la propiedad personalizada com.ibm.ws.webcontainer.suppressServletExceptionLogging a los valores de configuración del contenedor web y establezca la propiedad en true.
Name | Valor predeterminado |
---|---|
com.ibm.ws.webcontainer.suppressServletExceptionLogging | false |
com.ibm.ws.webcontainer.throwMissingJspException
Establezca la propiedad personalizada com.ibm.ws.webcontainer.throwMissingJspException en true para crear una excepción FileNotFoundException cuando falte un recurso incluido en un archivo JSP. Si esta propiedad no se establece en true, aparece una página de error.
Name | Valor predeterminado |
---|---|
com.ibm.ws.webcontainer.throwMissingJspException | false |
com.ibm.ws.webcontainer.throwpostconstructexception
Establezca la propiedad personalizada com.ibm.ws.webcontainer.throwpostconstructexception en true para propagar mensajes de error personalizados en el archivo error.xhtml.

Name | Valor predeterminado |
---|---|
com.ibm.ws.webcontainer.throwpostconstructexception | true |
![[AIX]](../images/aixlogo.gif)
com.ibm.ws.webcontainer.tolerateLocaleMismatchForServingFiles
- La codificación del sistema de archivos en la que una aplicación esté instalada
- La codificación del nombre de archivo que se envía en un URL de solicitud
Por ejemplo, si la solicitud es un nombre de archivo codificado con juego de caracteres de doble byte (DBCS) y el entorno local del sistema de archivos es en_US, que es una codificación ISO-8859, no habrá coincidencia.
Para solucionar este problema, establezca la propiedad personalizada com.ibm.ws.webcontainer.tolerateLocaleMismatchForServingFiles en true. Cuando establece esta propiedad personalizada, el contenedor web acepta la falta de coincidencia de las codificaciones del sistema de archivos y del nombre de archivo solicitado. A continuación, el contenedor web sirve la solicitud para un archivo válido.
Name | Valor predeterminado |
---|---|
com.ibm.ws.webcontainer.tolerateLocaleMismatchForServingFiles | false |
com.ibm.ws.webcontainer.useOriginalRequestState
Si una solicitud se altera temporalmente o la aplicación ha implementado la interfaz ServletRequest, es posible que la aplicación no pueda dar servicio a la solicitud debido a que para manejar la solicitud se utiliza el objeto de solicitud alterado temporalmente o implementado, en lugar del objeto de solicitud. Para asegurarse de que el objeto de solicitud se utiliza para manejar la solicitud, añada la propiedad personalizada com.ibm.ws.webcontainer.useOriginalRequestState a los valores de configuración del contenedor web y establézcala en true.
Name | Valor predeterminado |
---|---|
com.ibm.ws.webcontainer.useOriginalRequestState | false |
com.ibm.ws.webcontainer.useSemiColonAsDelimiterInURI
Si esta propiedad se establece en true, el contenedor web omite el punto y coma y todo lo que sigue en la llamada javax.servlet.http.HttpServletRequest.getPathInfo().
Name | Valor predeterminado |
---|---|
com.ibm.ws.webcontainer.useSemiColonAsDelimiterInURI | false |
com.ibm.ws.webcontainer.webgroupvhostnotfound
El mensaje de error SRVE0017W indica "Grupo Web no encontrado: {0}" y el mensaje de error SRVE0255 indica "No se ha definido un grupo Web/host virtual para manejar {0}". Estos mensajes pueden devolverse cuando no se encuentra la aplicación que se llama para procesar la solicitud a la que ha dado servicio IBM WebSphere Application Server. Puede utilizar la propiedad personalizada com.ibm.ws.webcontainer.webgroupvhostnotfound para cambiar el contenido de estos mensajes, para que el texto resulte más apropiado a su entorno.
Name | Valor predeterminado |
---|---|
com.ibm.ws.webcontainer.webgroupvhostnotfound | ninguno |
com.ibm.ws.webcontainer.xPoweredBy
Esta propiedad personalizada permite configurar el valor de la cabecera X-Powered-By, que proporciona la información de implementación del servidor.
Name | Valor predeterminado |
---|---|
com.ibm.ws.webcontainer.xPoweredBy | Servlet/3.0 |
com.ibm.websphere.management.application.sync.deleteSymbolicLinks
Los enlaces simbólicos existentes en un directorio de instalación de aplicación se suprimen cuando se desinstala o actualiza la aplicación. Para asegurarse de que no se supriman los enlaces simbólicos, añada la propiedad personalizada com.ibm.websphere.management.application.sync.deleteSymbolicLinks a su JVM y establézcala en false.
Esta propiedad debe establecerse a nivel de agente de nodo.
Name | Valor predeterminado |
---|---|
com.ibm.websphere.management.application.sync.deleteSymbolicLinks | true |
com.ibm.wsspi.jsp.allowMultipleAttributeValues
Establezca esta propiedad en true para que el contenedor web pueda almacenar varios valores para un atributo de etiqueta personalizada.
Name | Valor predeterminado |
---|---|
com.ibm.wsspi.jsp.allowMultipleAttributeValues | false |
com.ibm.wsspi.jsp.convertAttrValueToString
Establezca la propiedad personalizada de contenedor web com.ibm.wsspi.jsp.convertAttrValueToString en true para convertir los atributos de inicio y finalización del código de repetición en series antes de que se utilicen.
Name | Valor predeterminado |
---|---|
com.ibm.wsspi.jsp.convertAttrValueToString | false |
com.ibm.wsspi.jsp.disableElCache
Establezca la propiedad personalizada del contenedor web com.ibm.wsspi.jsp.disableElCache en true para inhabilitar la memoria caché de la expresión commons-el si está experimentando problemas de falta de memoria debido a que el evaluador de expresiones conserva las correlaciones hash.
Name | Valor predeterminado |
---|---|
com.ibm.wsspi.jsp.disableElCache | false |
com.ibm.wsspi.jsp.disableResourceInjection
La característica de inyección de recursos accede a los recursos de las aplicaciones de forma distinta que lo hacía en versiones anteriores del producto y hace que la salida de métodos compilados sea mayor de lo que lo era anteriormente. Si tiene archivos JSP de gran tamaño que en releases anteriores superaban el límite de 65535 bytes en el método de servicio convertido, ahora puede superar este límite, lo que hace que la compilación falle.
Si se encuentra con esta situación, puede dividir un archivo JSP grande en archivos JSP más pequeños y utilizar sentencias <jsp:include> para combinarlas después de que se hayan compilado o puede añadir la propiedad personalizada com.ibm.wsspi.jsp.disableResourceInjection a los valores del contenedor web para inhabilitar la función de inyección de recursos durante el proceso de conversión de JSP. Si la propiedad personalizada com.ibm.wsspi.jsp.disableResourceInjection se establece en true, se inhabilita la función de inyección de recursos para todas las aplicaciones.
Si sólo desea inhabilitar la función de inyección de recursos para aplicaciones específicas, puede añadir el atributo JSP disableResourceInjection en los archivos ibm-web-ext.xmi para esas aplicaciones específicas.
Name | Valor predeterminado |
---|---|
com.ibm.wsspi.jsp.disableResourceInjection | false |
com.ibm.wsspi.jsp.disableTldSearch
La propiedad personalizada com.ibm.wsspi.jsp.disableTldSearch puede utilizarse para mejorar el tiempo de inicio de una aplicación. De forma predeterminada, cuando una aplicación se inicia, el motor JSP busca en los directorios de instalación de la aplicación los archivos TLD (taglib descriptor). Este proceso de búsqueda puede incrementar el tiempo de inicio para las aplicaciones de gran tamaño que tienen muchos archivos y directorios. Para inhabilitar esta función, establezca la propiedad en true.
Name | Valor predeterminado |
---|---|
com.ibm.wsspi.jsp.disableTldSearch | false |
com.ibm.wsspi.jsp.enabledoublequotesdecoding
Establezca la propiedad personalizada com.ibm.wsspi.jsp.enabledoublequotesdecoding del contenedor web para decodificar y descodificar el carácter de comillas dobles si está incluido en un archivo JSP (JavaServer Pages).
El contenedor JSP no codifica ni decodifica el carácter de comillas dobles durante la conversión de un archivo JSP. Sino que se depende del navegador para su decodificación. No obstante, cuando existe un carácter de comillas dobles en una función de script de una etiqueta, el navegador no puede decodificarlo. De este modo, cuando no se establece la propiedad personalizada, el carácter de comillas dobles codificado hace que la función de script no funcione correctamente.
Cuando establece esta propiedad personalizada, el valor afecta a todas las aplicaciones desplegadas. Si desea que sólo afecte a una aplicación individual, establezca el atributo JSP enableDoubleQuotesDecoding en true en el archivo ibm-web-ext.xmi en la aplicación.
Name | Valor predeterminado |
---|---|
com.ibm.wsspi.jsp.enabledoublequotesdecoding | false |
com.ibm.wsspi.jsp.removexmlnsfromoutput
Cuando el contenedor web genera código HTML desde un documento JSP, el contenedor web no elimina ningún atributo xmlns, especificado por las etiquetas en el documento JSP. Por lo tanto, cuando se muestra el documento JSP en el navegador, los atributos xmlns se conservan en el código HTML generado.
Para asegurarse de que se eliminen siempre los atributos xmlns del código HTML generado, añada la propiedad personalizada com.ibm.wsspi.jsp.removexmlnsfromoutput a los valores de configuración del contenedor web y establezca esta propiedad en true.
Cuando establece esta propiedad personalizada, el valor afecta a todas las aplicaciones desplegadas. Si desea que sólo afecte a una aplicación individual, establezca el atributo JSP removeXmlnsFromOutput en true en el archivo ibm-web-ext.xmi de la aplicación.
Name | Valor predeterminado |
---|---|
com.ibm.wsspi.jsp.removexmlnsfromoutput | false |
![[z/OS]](../images/ngzos.gif)
ConnectionResponseTimeout
Utilice la propiedad ConnectionResponseTimeout para establecer el periodo máximo de tiempo, en segundos, que el servidor espera a que un componente de aplicación responda a una solicitud HTTP. Establezca esta variable para cada definición de canal de transporte HTTP en el servidor. Debe establecer esta variable para los canales de transporte SSL y para los canales de transporte no de SSL. Si no se recibe la respuesta dentro del periodo de tiempo especificado, es posible que falle el servidor con ABEND EC3 y RSN=04130007. Si se establece este temporizador se impide que las aplicaciones esperen una respuesta de un componente de aplicación que puede estar en punto muerto, en bucle o que ha encontrado otros problemas de procesos que han provocado que se cuelgue la aplicación.
Utilice las propiedades personalizadas del servidor protocol_http_timeout_output_recovery y protocol_https_timeout_output_recovery para indicar la acción de recuperación que desea cuando se reciben tiempos de espera excedidos para las solicitudes a través de los canales de transporte HTTP y HTTPS.
Información | Valor |
---|---|
Tipo de datos | Integer |
Serie | 300 segundos |
![[AIX Solaris HP-UX Linux Windows]](../images/dist.gif)
![[IBM i]](../images/iseries.gif)
DebugSessionCrossover
La propiedad personalizada DebugSessionCrossover habilita el código para realizar comprobaciones adicionales con el fin de verificar que sólo se accede o hace referencia a la sesión asociada con la solicitud. Los mensajes se anotan cronológicamente, si se detectan discrepancias.
Para habilitar la detección cruzada entre datos de sesión, establezca esta propiedad en true
Name | Valor predeterminado |
---|---|
DebugSessionCrossover | false |
Consulte la sección sobre problemas de sesión HTTP para obtener más información.
DecodeUrlAsUTF8
La característica URL codificados en UTF-8, que proporciona los URL (Uniform Resource Locator) con código UTF-8 para incluir caracteres de doble-byte en los URL, está habilitado por omisión. Puede evitar que el contenedor web decodifique de forma explícita los URL en UTF-8 y hacer que utilicen el estándar ISO-8859, según lo establecido en la especificación HTTP actual, estableciendo esta propiedad personalizada en false.
Name | Valor predeterminado |
---|---|
DecodeUrlAsUTF8 | true |
DisableMultiThreadedServletConnectionMgmt
- Pulse Servidores de aplicaciones > nombre_servidor > Contenedor web > Propiedades personalizadas.
- Cree la propiedad DisableMultiThreadedServletConnectionMgmt y establezca su valor en true.
Cuando está habilitada esta propiedad, si no está cerrado el descriptor de conexión y finaliza el servlet, el contenedor web (como parte de postinvoke), aparca la conexión y no cierra el descriptor de conexión.
Name | Valor predeterminado |
---|---|
DisableMultiThreadedServletConnectionMgmt | false |
com.ibm.ws.webcontainer.denyDuplicateFilterinChain
Cuando un URI de solicitud de entrada se correlaciona con varias correlaciones de filtros URL, se actualiza la cadena de filtros con el mismo filtro varias veces, lo que hace que se invoque varias veces el filtro para el mismo URI. Si añade la propiedad personalizada denyDuplicateFilterinChain a los valores de contenedor web y establece esta propiedad en true, no se añade un filtro a una cadena de filtros si está presente en dicha cadena.
Name | Valor predeterminado |
---|---|
com.ibm.ws.webcontainer.denyDuplicateFilterinChain | false |
enableInProcessConnections
Utilice la propiedad personalizada enableInProcessConnections para reducir los tiempos de respuesta y el número de hebras que se utilizan para dar servicio a una solicitud, lo que reduce la posibilidad de que se produzca un punto muerto.
Hay una vía de acceso de comunicación optimizada entre una aplicación cliente de servicios web y un contenedor web que se encuentran en el mismo proceso del servidor de aplicaciones. Las solicitudes del cliente de servicios web que se envían normalmente al contenedor web utilizando una conexión de red se entregan directamente al contenedor web utilizando una vía de acceso local optimizada. La vía de acceso local está disponible porque la aplicación cliente de servicios web y el contenedor web se ejecutan en el mismo proceso. Esta vía de acceso de comunicación optimizada está inhabilitada por omisión. Antes de habilitar esta propiedad, asegúrese de que no se hayan especificado comodines para los puertos del contenedor web. Utilice puertos específicos para el contenedor Web cuando esté habilitada la vía de acceso de comunicación optimizada.
Para habilitar la vía de acceso de comunicaciones optimizada, establezca esta propiedad en true
Name | Valor predeterminado |
---|---|
enableInProcessConnections | false |
Consulte el tema Comunicación optimizada del cliente de servicios web con el contenedor web para obtener más información.

fileServingEnabled, directoryBrowsingEnabled y serveServletsByClassnameEnabled
fileServingEnabled, directoryBrowsingEnabled y propiedades similares son valores globales para servlets internos. Los archivos WAR (Web Application Archive) empaquetados mediante herramientas de terceros no pueden especificar el comportamiento de los servicios que muestran los servlets internos del contenedor web.
- Si establece la propiedad fileServingEnabled en false se inhabilita la función fileServing.
- Si establece la propiedad directoryBrowsingEnabled en true se habilita la función directoryBrowsing.
- Si establece la propiedad serveServletsByClassnameEnabled en true se habilita la función serveServletsByClassnameEnabled.
Name | Valor predeterminado |
---|---|
fileServingEnabled | true |
directoryBrowsingEnabled | false |
serveServletsByClassnameEnabled | false |
Los valores definidos a nivel de la herramienta de ensamblaje tendrán preferencia frente a los valores globales establecidos mediante las propiedades personalizadas a nivel de contenedor web.
Las extensiones de despliegue de aplicaciones web continúan manteniendo la información de configuración para los servicios proporcionados por los servlets internos y tienen preferencia frente a los valores globales establecidos mediante las propiedades personalizadas a nivel de contenedor web.
ForceSessionIdLengthCheck
Los nuevos ID de sesión generados tienen, de forma predeterminada, 23 caracteres de longitud, a menos que se utilice la propiedad personalizada HttpSessionIdLength para especificar una longitud máxima distinta para los ID de sesión.
Cuando una solicitud entrante tiene un ID de sesión cuya longitud excede la longitud de ID de sesión esperada, y cuyo prefijo es idéntico a un ID de sesión existente, se utiliza el ID más largo para devolver una nueva sesión. Si la longitud del ID de sesión de la solicitud entrante es superior a la longitud máxima especificada para el sistema, de modo que excede la anchura de la columna de ID de la columna de la tabla de sesión utilizada en la persistencia de la base de datos, se emite un error SQL0302.
Para evitar errores de tipo SQL0302, puede añadir la propiedad personalizada ForceSessionIdLengthCheck a las propiedades personalizadas del contenedor web y establecerla en true. Cuando esta propiedad personalizada se establece en true, la longitud de un ID de sesión no puede ser de más de 23 caracteres. Si una solicitud entrante tiene un ID de sesión de más de 23 caracteres de longitud, se utilizan los primeros 23 caracteres para devolver una nueva sesión.
Name | Valor predeterminado |
---|---|
ForceSessionIdLengthCheck | false |
ForceSessionInvalidationMultiple
La propiedad personalizada ForceSessionInvalidationMultiple indica si el gestor de sesiones debe esperar indefinidamente a que se complete una solicitud antes de intentar invalidar la sesión, o de intentar invalidar una sesión una vez transcurrido el límite de tiempo especificado.
- Si especifica 0 (cero) para esta propiedad personalizada, el gestor de
sesiones espera indefinidamente hasta que se complete una solicitud antes de
intentar invalidar la sesión.
Si sus solicitudes normalmente no están vinculadas por un límite de tiempo de respuesta, especifique 0 para esta propiedad.
- Si especifica un entero positivo, como 1, 2 o 3 para esta propiedad personalizada, aunque se desconozca si una sesión ha finalizado, el gestor de sesiones intenta invalidar la sesión si transcurre el periodo tiempo especificado desde que se produjo el último acceso. Este período de tiempo es el resultado de multiplicar el valor especificado
para esta propiedad y el valor especificado para la propiedad de tiempo de
espera de sesión. Por ejemplo, si especifica 2 minutos para la propiedad de
tiempo de espera de sesión y 2 para la propiedad
ForceSessionInvalidationMultiple, el gestor de sesiones intenta invalidar la
sesión tras 4 minutos.
Si desea invalidar las sesiones después de un intervalo de tiempo determinado, especifique el entero positivo correspondiente para esta propiedad.
Name | Valor predeterminado |
---|---|
ForceSessionInvalidationMultiple | 1 |
httpsIndicatorHeader
La propiedad httpsIndicatorHeader personalizada gestiona las peticiones HTTPS que se dirige a un servidor de aplicaciones desde un proceso de descarga SSL que se utiliza delante de WebSphere Application Server. Cuando un proceso de descarga SSL recibe una petición HTTPS, ésta se redirige a través de HTTP a un servidor de aplicaciones que utiliza WebSphere Application Server. El proceso de descarga SSL se debe configurar de modo que se añada una cabecera especial que indique que la solicitud original es a través de HTTPS. La propiedad httpsIndicatorHeader especifica el nombre clave de la cabecera de solicitud añadido mediante el recuadro SSL. El servidor de aplicaciones comprueba este indicador para determinar si es necesario SSL. Si determina que la solicitud es SSL sobre HTTP, se selecciona un esquema HTTPS.
Name | Valor predeterminado |
---|---|
httpsIndicatorHeader | ninguno |
HttpSessionIdReuse
La propiedad personalizada HttpSessionIdReuse determina si el gestor de sesiones puede utilizar el ID de sesión en un navegador para conservar los datos de la sesión en todas las aplicaciones Web que se ejecutan en un entorno que no se ha configurado para la permanencia de sesiones. En un entorno de varias JVM que no está configurado para la permanencia de sesiones, al establecer esta propiedad en true se permite que el gestor de sesiones utilice la misma información de sesión para todas las solicitudes de un usuario, incluso si las aplicaciones web que gestionan estas solicitudes están gestionadas por archivos de JVM distintas. El valor predeterminado para esta propiedad es false.
Para habilitar el gestor de sesiones de modo que utilice el ID de sesión de un navegador para conservar los datos de la sesión en todas las aplicaciones web que se ejecutan en un entorno que no se ha configurado para la permanencia de sesiones, establezca esta propiedad en true.
Name | Valor predeterminado |
---|---|
HttpSessionIdReuse | false |
Escuchas
La especificación de servlet da soporte a las aplicaciones que registran escuchas para los sucesos relacionados con los servlets en aplicaciones individuales mediante el descriptor web.xml. No obstante, mediante la propiedad personalizada de escuchas, puede habilitar un servidor para que escuche los sucesos de servlets entre las aplicaciones web.
listeners=listener_class
Name | Valor predeterminado |
---|---|
Escuchas | ninguno |
El valor de esta propiedad es una serie que especifica una lista separada por comas de las clases de escucha. La escucha que se proporciona debe implementar las clases de escucha estándar desde las clases de extensión de escucha de IBM o API de Java Servlet.
![[z/OS]](../images/ngzos.gif)
MutualAuthCBindCheck
Esta propiedad sólo es válida en la plataforma z/OS. Utilice la propiedad MutualAuthCBindCheck para especificar si un certificado de cliente se resuelve o no en un principal SAF.
Utilice la propiedad MutualAuthCBindCheck para especificar si un certificado de cliente se resuelve o no en un principal SAF. Si esta propiedad está establecida en true, todas las conexiones SSL desde un navegador deben tener un certificado de cliente y el ID de usuario asociado a ese certificado de cliente debe tener una autoridad de CONTROL DE RACF para CB.BIND.servername. Independientemente de si la autenticación del certificado del cliente se utiliza o no en una conexión SSL, si no se cumplen estas condiciones, se cerrará la conexión. Emita el mandato RACF siguiente para asignar al ID de usuario asociado con ese certificado de cliente la autorización RACF CONTROL:
PERMIT CB.BIND.<prefijo perfil SAF opcional>.clustername CLASS(CBIND) ID(clientCertUserid) ACCESS(CONTROL)
Name | Valor predeterminado |
---|---|
MutualAuthCBindCheck | false |
prependSlashToResource
WebSphere Application Server 5.x da soporte a los URL (Uniform Resource Locator) sin barras inclinadas iniciales (/). Para conservar la compatibilidad, puede establecer esta propiedad personalizada en true. Cuando se establece esta propiedad en true, el contenedor web omite la especificación y considera que los URL sin una barra inclinada inicial utilizan el siguiente par de nombre-valor.
Name | Valor predeterminado |
---|---|
prependSlashToResource | false |
com.ibm.ws.webcontainer.suppressLoggingServiceRuntimeExcep
Puede utilizar esta propiedad para suprimir el registro de cualquier RuntimeException que se produzca durante el servicio de un servlet.
De forma predeterminada, el contenedor web registra la excepción de tipo RuntimeException en los registros JVM, si se produce la excepción durante el servicio de un servlet. Si esta propiedad se establece en true, el contenedor web no registra ningún tipo de RuntimeException que se produzca durante el servicio de un servlet.

Name | Valor predeterminado |
---|---|
com.ibm.ws.webcontainer.suppressLoggingServiceRuntimeExcep | false |
trusted
La propiedad personalizada trusted permite que el servidor de aplicaciones utilice cabeceras privadas de entrada del plug-in de servidor web. Estas cabeceras privadas de entrada notifican al servidor de aplicaciones acerca de la conexión con el servidor web. Cuando se establece la propiedad personalizada en true, el servidor de aplicaciones utiliza la información declarada en los certificados de cliente. El usuario utiliza estos certificados de cliente para conectar con el servidor web y establecer la información de cliente, que se trata como el certificado para el usuario. A continuación, el servidor de aplicaciones utiliza la información de certificado para realizar autenticaciones cuando se utiliza la autenticación de certificado de cliente o cuando el código de aplicaciones accede a certificados javax.net.ssl.peer_certificates. Como esta información se declara, no es seguro y es posible que sea vulnerable a un atacante que pueda conectarse directamente con el servidor de aplicaciones y omitir el servidor web.
Name | Valor predeterminado |
---|---|
trusted | true |
![[AIX Solaris HP-UX Linux Windows]](../images/dist.gif)
UseOracleBLOB
La propiedad personalizada UseOracleBLOB crea la tabla de base de datos de sesión HTTP mediante el tipo de datos BLOB (Binary Large Object) para la columna central. Esta propiedad incrementa el rendimiento de sesiones persistentes cuando se utilizan bases de datos Oracle.
Debido a una restricción de Oracle, el soporte de BLOB requiere el uso del controlador de base de datos de Oracle en el caso de más de 4000 bytes de datos. Asimismo, debe asegurarse de que se cree una nueva tabla de sesiones antes de que el servidor se vuelva a reiniciar mediante la eliminación de la tabla de sesiones antigua o mediante la modificación de la definición de origen de datos para que haga referencia a una base de datos que no contenga una tabla de sesiones.
Para crear una tabla de sesiones mediante el tipo de datos BLOB, establezca esta propiedad en true.
Name | Valor predeterminado |
---|---|
UseOracleBLOB | false |
![[AIX Solaris HP-UX Linux Windows]](../images/dist.gif)
setContentLengthOnClose
Conmute entre si se establece o no la longitud del contenido cuando una aplicación cierra de forma explícita la respuesta.
El valor predeterminado y recomendado es true, no obstante, establezca el valor en false si una respuesta de aplicación contiene caracteres de doble byte.
Name | Valor predeterminado |
---|---|
setContentLengthOnClose | true |
com.ibm.ws.webcontainer.servlet30compatibility
Cuando esta propiedad personalizada se establece en true, los cambios de comportamiento realizados para servlet 3.1 se revierten al comportamiento de servlet 3.0 siguiente:
- Si invoca AsyncContext.getRequest() o AsyncContext.getResponse() tras AsyncContext.dispatch() o AsyncContext.complete(), el servidor no lanza la excepción IllegalStateException.
- Si invoca ServletResponse.reset(), el estado de llamada de getWriter() o getOutputStream() no se borra.
- Si invoca los métodos ServletContext siguientes, el servidor no lanza una UnsupportedOperationException:
- ServletContext.getClassLoader()
- ServletContext.getEffectiveMajorVersion()
- ServletContext.getEffectiveMinorVersion()
- ServletContext.getFilterRegistration()
- ServletContext.getFilterRegistrations()
- ServletContext.getServletRegistration()
- ServletContext.getServletRegistrations()
- ServletContext.declareRoles()
- ServletContext.getVirtualServerName()
- El contenedor web no detiene el registro de un servlet con una correlación de URL duplicada. Una aplicación existente se inicia normalmente; no obstante, el despliegue de una aplicación nueva que contiene conflictos con varios servlets correlacionados con el mismo patrón de url aún sigue fallando en el despliegue.
- El valor establecido en la propiedad personalizada del contenedor web com.ibm.ws.webcontainer.RedirectWithPathInfo no se ignora.
- Si un servlet lanza una IOException y hay un filtro para dicha solicitud, el contenedor web lanza una ServletException.
El valor predeterminado y el recomendado es false; no obstante, puede establecer el valor en true para volver al comportamiento 3.0.
Name | Valor predeterminado |
---|---|
com.ibm.ws.webcontainer.servlet30compatibility | false |