2 pièce(s) jointe(s)
L'inputText n'aime pas le selectOneMenu
Hello,
Je viens vous soumettre un bug tout à fait bizarre !
J'utilise JSF version 1.2_04-b07-FCS, Facelets en version 1.1.11...
J'ai ce code dans ma page:
Code:
1 2 3 4 5 6
|
<h:form>
<h:inputText value="#{fake.test}"/>
<h:outputText value="#{fake.test}"/>
<h:commandButton action="#{fake.doIt}" value="Do it"/>
</h:form> |
Je m'amuse à rentrer exactement la valeur xx"> <input value=" (avec les " donc) dans mon inputText et je clique sur le bouton.
Tout se passe bien, mon inputText, une fois réaffiché, affiche bien xx"> <input value=". Les charactères HTML ont été "échappés" (escaped) et le code HTML est celui-ci :
Code:
<input type="text" name="j_id518:j_id523" value="xx& quot;> <input value=& quot;" />
(j'ai mis un espace entre le & et le quot; mais dans le source il n'y en a pas)
Tout est ok !
Maintenant, je mets une combobox avant mon inputText (ça n'arrive pas si la combobox est après ! ) :
Code:
1 2 3 4 5 6 7 8 9
|
<h:form>
<h:selectOneMenu value="#{fake.label}">
<f:selectItems value="#{fake.elements}"/>
</h:selectOneMenu>
<h:inputText value="#{fake.test}"/>
<h:outputText value="#{fake.test}"/>
<h:commandButton action="#{fake.doIt}" value="Do it"/>
</h:form> |
Et je retente...
Bah là, ça marche pû !! Il interprête mon texte comme du HTML, et du coup ça donne ce code HTML (ce que j'ai rentré dans mon inputText est coloré en bleu ci-dessous) :
Code:
<input type="text" name="j_id518:j_id523" value="xx"> <input value="" />
J'ai fait 2 captures d'écran pour montrer ce que ça donne : test001.jpg pour le 1er cas, test002.jpg pour le second...
Une idée ???
ps: Dans les 2 cas, le outputText affiche ce qui est attendu, à savoir xx"> <input value=", sans interprétation.