Propriétés personnalisées de conteneur Web spécifiques de JavaServer Pages

Vous pouvez configurer des paires de données nom-valeur arbitraires, où le nom est une clé de propriété et la valeur une chaîne, pouvant être utilisées pour définir des propriétés de configuration du système interne. Vous pouvez définir une nouvelle propriété pour configurer un paramètre sans se limiter aux éléments disponibles dans la console d'administration.

com.ibm.ws.jsp.getparameterreturnemptystring

Cette propriété personnalisée facilite la migration des applications de la version 5.1.

Si un fichier JSP contient une action qui n'est pas définie dans un fichier JSP, le moteur JSP renvoie la valeur null. Dans la version 5.1, si un fichier JSP contient une action qui n'est pas définie dans un fichier JSP, le moteur JSP renvoyait une chaîne vide. Si vous avez besoin que vos applications continuent de renvoyer une chaîne vide, ajoutez cette propriété à vos paramètres JSP et attribuez-lui la valeur true. Lorsque cette propriété a la valeur true, la valeur renvoyée sur un appel de jsp:getProperty est une chaîne vide et non la valeur null.

Nom
com.ibm.ws.jsp.getparameterreturnemptystring
Value
Booléen

com.ibm.ws.jsp.jdksourcelevel

Utilisez cette propriété pour définir le niveau source JDK via la console d'administration.

Un paramètre de moteur JSP peut être configuré pour différents niveaux de JDK. Toutefois, la définition d'un paramètre JSP nécessite que vous définissiez l'attribut JSP jdksourcelevel dans le fichier d'extensions Web pour chaque module Web. Vous pouvez cependant utiliser la propriété personnalisée com.ibm.ws.jsp.jdksourcelevel pour définir l'attribut JSP globalement à l'aide de la propriété personnalisée de conteneur Web. Si cet attribut est également défini dans le fichier d'extensions Web, la propriété définie dans ce même fichier remplace la propriété personnalisée pour cette application particulière. Cette propriété personnalisée est insensible à la casse des caractères.

La valeur par défaut est 17.

Nom
com.ibm.ws.jsp.jdksourcelevel
Value
13, 14, 15, 16, 17 ou 18

com.ibm.wsspi.jsp.allowjspoutputelementmismatch

Dans les versions précédentes, les exigences CTS n'étaient pas applicables au produit et, par conséquent, le conteneur JSP prenait en charge plusieurs occurrences de propriétés dans l'élément jsp:output. Dans la version actuelle, la conformité CTS exige que le conteneur JSP applique strictement les règles relatives aux occurrences de propriétés multiples dans l'élément jsp:output. Vous pouvez utiliser la propriété personnalisée com.ibm.wsspi.jsp.allowjspoutputelementmismatch en vue d'appliquer la règle pour la compatibilité avec les versions antérieures.

Nom
com.ibm.wsspi.jsp.allowjspoutputelementmismatch
Value
Booléen

com.ibm.ws.jstl.allowLenientDateParsing

Certaines applications incluent la balise fmt:parseDate JSTL pour analyser une date et une heure. Par exemple :
<fmt:parseDate value="20070311 02:00:00 AM" 
var="myTestDate" 
type="date" 
pattern="yyyyMMdd HH:mm:ss a" /> 
Si la date et l'heure analysées sont des données d'heure d'été, l'exception suivante survient :
java.text.ParseException: Unparseable date: "20070311 02:00:00 AM" 
at java.text.DateFormat.parse(DateFormat.java:349) at 
org.apache.taglibs.standard.tag.common.fmt.ParseDateSupport.doEn dTag(ParseDateSupport.java:178) 
at com.ibm._jsp._testDate._jspx_meth_fmt_parseDate_0(_jstlDate.java :123)
at com.ibm._jsp._testDate._jspService(_jstlDate.java:86) ... 28 more  

Si vous souhaitez autoriser une analyse moins stricte de la date lors de l'utilisation de la balise parseDate dans une application spécifique, ajoutez la propriété com.ibm.ws.jstl.allowLenientDateParsing en tant que paramètre de contexte au fichier web.xml pour cette application et attribuez la valeur true à ce paramètre.

Vous trouverez ci-dessous un exemple indiquant comment définir cette propriété en tant que paramètre de contexte dans un fichier web.xml :

<context-param>
<param-name>com.ibm.ws.jstl.allowLenientDateParsing</param-name>
<param-value>true</param-value>
</context-param>
Eviter les incidents Eviter les incidents: Etant donné que cette propriété doit être définie pour une application spécifique, elle doit être définie en tant que paramètre de contexte. Elle est ignorée si elle est définie en tant que propriété personnalisée.gotcha

com.ibm.wsspi.jsp.allowtaglibprefixusebeforedefinition

Pour la compatibilité CTS, une directive de bibliothèque de balises définissant un préfixe doit exister afin que le préfixe puisse être utilisé dans une balise personnalisée. Cette règle n'était pas appliquée dans les éditions antérieures car les exigences CTS n'étaient pas requises. Toutefois, vous pouvez utiliser la propriété personnalisée com.ibm.wsspi.jsp.allowtaglibprefixusebeforedefinition en vue d'appliquer la règle pour la compatibilité avec les versions antérieures.

Nom
com.ibm.wsspi.jsp.allowtaglibprefixusebeforedefinition
Value
Booléen

com.ibm.wsspi.jsp.allowtaglibprefixredefinition

Pour la conformité CTS, si un préfixe de bibliothèque de balises est déjà défini avec un URI différent dans un JSP, le produit doit créer une erreur de conversion. Cette règle n'était pas appliquée dans les éditions antérieures car les exigences CTS n'étaient pas requises. Toutefois, vous pouvez utiliser la propriété personnalisée com.ibm.wsspi.jsp.allowtaglibprefixredefinition en vue d'appliquer la règle pour la compatibilité avec les versions antérieures.

Nom
com.ibm.wsspi.jsp.allowtaglibprefixredefinition
Value
Booléen

com.ibm.wsspi.jsp.allowunmatchedendtag

Cette propriété personnalisée facilite la migration des applications de la version 5.1.

Lorsqu'une terminaison incorrecte des balises de fin est détectée, une exception de conversion est créée. Dans la version 5.1 du produit, une terminaison incorrecte des balises de fin était ignorée. Si vous migrez des applications de la version 5.1 qui comportent des balises de fin ayant une terminaison incorrecte, vous pouvez ajouter cette propriété personnalisée à vos paramètres de conteneur Web et lui attribuer la valeur true si vous ne souhaitez pas qu'une exception de conversion soit émise lorsque la terminaison des balises de fin est incorrecte.

Lorsque cette propriété a la valeur true, cette fonctionnalité est activée pour toutes les applications du serveur. Si vous souhaitez activer cette fonctionnalité pour une application spécifique, indiquez l'attribut JSP allowUnmatchedEndTag dans le fichier d'extensions de cette application spécifique.

Nom
com.ibm.wsspi.jsp.allowunmatchedendtag
Value
Booléen

com.ibm.wsspi.jsp.evalquotedandescapedexpression

Cette propriété permet de compiler les fonctions qui contiennent une expression. Le code de conversion JSP a été modifié en vue de gérer correctement les caractères d'échappement et les apostrophes au moment de déterminer si une expression doit être évaluée ou traitée comme chaîne littérale. Pour appliquer ce comportement globalement à toutes les applications Web, ajoutez la paire nom-valeur suivante en tant que propriété personnalisée de conteneur Web.

Nom
com.ibm.wsspi.jsp.evalquotedandescapedexpression
Value
Booléen

Pour activer ce nouveau comportement à destination d'une application unique, vous devez également ajouter l'attribut JSP evalquotedandescapedexpression au fichier ibm-web-ext.xmi ou ibm-web-ext.xml de l'application défaillante et paramétrer sa valeur sur true.

L'exemple de code suivant affiche l'attribut au format XMI :
&ltjspAttributes xmi:id="JSPAttribute_1" name="evalquotedandescapedexpression" value="true"/>
Eviter les incidents Eviter les incidents: Les ID attribut ne doivent pas exister en plusieurs exemplaires.gotcha
L'exemple de code suivant affiche l'attribut dans le fichier ibm-web-ext.xml :
<?xml version="1.0" encoding="UTF-8"?>
<web-ext
	xmlns="http://websphere.ibm.com/xml/ns/javaee"
	xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
	xsi:schemaLocation="http://websphere.ibm.com/xml/ns/javaee http://websphere.ibm.com/xml/ns/javaee/ibm-web-ext_1_0.xsd"
	version="1.0">
	<jsp-attribute name="evalquotedandescapedexpression" value="true" />

	<reload-interval value="3"/>
	<auto-encode-requests value="true"/>
	<auto-encode-responses value="true"/>
	<enable-directory-browsing value="true"/>
	<enable-file-serving value="true"/>
	<pre-compile-jsps value="true"/>
	<enable-reloading value="true"/>
	<enable-serving-servlets-by-class-name value="true" />	

</web-ext>
Pratiques recommandées Pratiques recommandées: Utilisez un outil d'assemblage, tel que Rational Application Developer, pour modifier les fichiers de liaison et d'extension IBM®. Les fichiers d'extensions et de liaisons contenus dans les modules peuvent être convertis de XMI en XML à l'aide de l'outil IBM Bindings and Extensions Conversion Tool for Multi-Platforms.bprac
Configurations prises en charge Configurations prises en charge: Pour les fichiers de liaison et d'extension IBM, l'extension de nom de fichier .xmi ou .xml est différente selon que vous utilisiez un module ou une application antérieure à Java EE 5 ou un module ou une application ultérieure à Java EE 5. Un fichier de liaison ou d'extension IBM porte le nom ibm-*-ext.xmi ou ibm-*-bnd.xmi où * correspond au fichier d'extension ou de liaison, tel app, application, ejb-jar ou web. Les conditions suivantes s'appliquent :
  • Pour une application ou un module qui utilise une version Java EE antérieure à la version 5, l'extension de fichier doit être .xmi.
  • Pour une application ou un module qui utilise Java EE 5 ou version ultérieure, l'extension de fichier doit être .xml. Si des fichiers .xmi sont inclus dans l'application ou le module, le produit les ignore.

Toutefois, un module Java EE 5 ou version ultérieure peut exister dans une application qui inclut des fichiers antérieurs à Java EE 5 et utilise l'extension de nom de fichier .xmi.

Les fichiers ibm-webservices-ext.xmi, ibm-webservices-bnd.xmi, ibm-webservicesclient-bnd.xmi, ibm-webservicesclient-ext.xmi et ibm-portlet-ext.xmi continuent d'utiliser les extensions de fichier .xmi.

sptcfg

com.ibm.wsspi.jsp.modifyPageContextVariable

Pendant la phase de conversion d'un fichier de balises compilé, le conteneur JSP utilise implicitement la variable pageContext de l'objet PageContext. Or, l'utilisation de la variable pageContext comme nom de variable implicite dans les fichiers de balises n'est pas conforme à la spécification JSP.

Si des erreurs de compilation se produisent pour des applications utilisant dans leur fichier de balises une variable pageContext locale, donnez la valeur true à la propriété personnalisée com.ibm.wsspi.jsp.modifyPageContextVariable pour supprimer l'utilisation du nom de la variable pageContext dans le code Java généré pour les fichiers de balises.

Nom
com.ibm.wsspi.jsp.modifyPageContextVariable
Value
Booléen

com.ibm.wsspi.jsp.recompilejsponrestart

Chaque fois que l'application est redémarrée, cette propriété force la recompilation des fichiers JSP qui avaient été compilés au moment de l'exécution. Cette propriété s'avère utile si vous passez à l'implémentation JSF sous-jacente. Cette propriété est particulièrement adaptée aux environnements de développement.

Nom
com.ibm.wsspi.jsp.recompilejsponrestart
Value
Booléen

com.ibm.wsspi.jsp.usecdatatrim

Cette propriété personnalisée facilite la migration des applications de la version 5.1.

Si vos fichiers JSP incluent des balises d'imbrication sur des lignes distinctes, des lignes supplémentaires apparaissent dans le code Java généré pour ces sections des fichiers JSP. Ces lignes supplémentaires sont ajoutées dans le code Java généré car le texte n'est pas fractionné avant la création de la section CDATA.

Vous pouvez supprimer ces lignes si vous utilisez le caractère guillemet (") pour ajouter toutes les lignes dans une seule ligne ou si vous utilisez cette propriété pour activer le fractionnement du texte avant la création de la section CDATA. Cette dernière action supprime les espaces supplémentaires dans le code Java généré.

Lorsque cette propriété est ajoutée à vos paramètres de conteneur Web et qu'elle a la valeur true, cette fonctionnalité est activée pour toutes les applications du serveur. Si vous souhaitez activer cette fonctionnalité pour une application spécifique, indiquez les éléments JSPAttribute, useCDataTrim dans le fichier d'extensions pour cette application spécifique.

Nom
com.ibm.wsspi.jsp.usecdatatrim
Value
Booléen

com.ibm.wsspi.jsp.usescriptvardupinit

Le code généré pour un fichier JSP supposait de déclarer deux fois au minimum les mêmes variables de balise dans une condition If-Else, même si la variable comportait une portée de type page. La propriété personnalisée com.ibm.wsspi.jsp.usescriptvardupinit active cette fonction pour toutes les applications déployées sur un serveur particulier. Si la fonction de compatibilité est requise uniquement pour une application spécifique, activez l'attribut JSP useScriptVarDupInit. Si les deux options sont définies, l'attribut JSP prend le pas sur la propriété personnalisée du conteneur Web.

Nom
com.ibm.wsspi.jsp.usescriptvardupinit
Value
Booléen

com.ibm.wsspi.jsp.reusepropertygroupconfigoninclude

Pour les utilisateurs en transition Pour les utilisateurs en transition: La plupart des propriétés définies dans un groupe de propriétés JSP s'appliquent à la totalité d'une unité de conversion, par exemple, le fichier JSP demandé qui est mis en correspondance par son masque d'URL et tous les fichiers qu'il inclut à l'aide de la directive include. Les propriétés page-encoding et is-xml constituent des exceptions, car elles s'appliquent séparément à chaque fichier JSP qui est mis en correspondance par son masque d'URL. Pour rétablir le comportement d'un paramètre antérieur à WebSphere Application Server Version 9.0, affectez à la propriété personnalisée la valeur true pour appliquer les deux valeurs de propriété à l'ensemble de l'unité de conversion.trns
Nom
com.ibm.wsspi.jsp.reusepropertygroupconfigoninclude
Value
false

com.ibm.wsspi.jsp.usestringcast

Cette propriété personnalisée facilite la migration des applications de la version 5.1.

La source Java générée pour un fichier JSP n'ajoute pas de diffusion "implicite" pour les types de retour Chaîne lors de l'appel de la méthode request.getAttribute. Lorsqu'un fichier JSP inclut une ressource dont le chemin relatif n'est pas évalué comme chaîne, l'inclusion échoue car elle accepte uniquement une Chaîne comme chemin relatif de la ressource. Ce comportement est différent de celui de la version 5.1.

Si vous migrez des applications de la version 5.1 qui incluent la méthode request.getAttribute, vous pouvez ajouter cette propriété à vos paramètres de conteneur Web et lui attribuer la valeur true. Lorsque cette propriété a la valeur true, le compilateur JSP ajoute explicitement un élément 'String cast' au chemin relatif d'une ressource avant l'inclusion.

Lorsque cette propriété est ajoutée à vos paramètres de conteneur Web et qu'elle a la valeur true, cette fonctionnalité est activée pour toutes les applications du serveur. Si vous souhaitez activer cette fonctionnalité, indiquez l'attribut JSP useStringCast dans le fichier d'extensions de cette application spécifique.

Nom
com.ibm.wsspi.jsp.usestringcast
Value
Booléen

Icône indiquant le type de rubrique Rubrique de référence



Icône d'horodatage Dernière mise à jour: last_date
http://www14.software.ibm.com/webapp/wsbroker/redirect?version=cord&product=was-nd-mp&topic=rweb_jsp_custom_props
Nom du fichier : rweb_jsp_custom_props.html