Bonjour,

voici une nouvelle question dont la réponse a sûrement déjà été donnée, mais pour laquelle je n'ai pas été capable de trouver les mots clefs pour la retrouver.
Je la formule donc à ma façon, en espérant que l'un ou l'une d'entre vous saura trouver la réponse à ma question.

Je dispose dans un bean d'une propriété de type String que je voudrais mapper avec plusieurs champs JSF (de type <h:inputText .../>) : chacun de ces champs serait (idéalement!) mappé avec une sous-chaîne de cette propriété.

Par exemple, si je prends un numéro de compte décrit par un RIB, qui se compose de :
  • 1 Code banque
  • 1 Code Guichet
  • 1 Numéro de compte
  • 1 Clé RIB


monBean charge un champ de BdD d'un bloc:
Code : Sélectionner tout - Visualiser dans une fenêtre à part
String AccountData = "BBBBBGGCCCCCCCCCRR";
avec évidemment les getter et setter associés.


Dans mon JSF, je voudrais qqchose comme ça (c'est une formulation vue d'esprit, et non qqchose qui existe... et c'est bien là tout mon problème!) :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
	<h:inputText id="Banque"
		value="#{monBean.NumeroCompte[1:2]}"							
		required="true"
		maxlength="5"/>
	<h:inputText id="Guichet"
		value="#{monBean.NumeroCompte[3:4]}"							
		required="true"
		maxlength="2"/>
	<h:inputText id="NumeroCompte"
		value="#{monBean.NumeroCompte[5:13]}"							
		required="true"
		maxlength="9"/>
	<h:inputText id="NumeroCompte"
		value="#{monBean.NumeroCompte[14:15]}"							
		required="true"
		maxlength="2"/>

Je sais qu'il existe des fonctions de type substring dans la JSTL (fn:substring), mais -sauf si je les ai mal comprises- elles travaillenent avec des copies, et je ne peux donc pas utiliser cette fonction pour l'accès à la sous-chaîne correspondante.

J'espère avoir été clair.
Et merci de m'avoir lu jusque là.