J'ai contourné mon problème. Voici donc mon nouveau code de ma JSP:
<%!private ADO ado = new ADO(); %>
<p align="center"> <font face="Broadway"><input type="text" value=<%=ado.decoupLogin(request, response) %> name="salarie" size="20"></font></p>
Et voici le code de ma fonction de mon programme java :
public String decoupLogin(HttpServletRequest req, HttpServletResponse rep){
HttpSession Session = req.getSession();
String s = (String)Session.getAttribute("login");
s = s.substring(0, s.lastIndexOf("."));
s += " ";
String x = (String)Session.getAttribute("login");
x = x.substring(x.lastIndexOf(".")+1, x.lastIndexOf("-"));
s += x;
return s;
}
Cependant, je rencontre un nouveau problème. Le login que je récupère est sous la forme "dupont/-henry" (nom/-prénom). Pour ce genre de login, tout va bien. Mais dès qu'il s'agit d'un login avec mon composé, il ne m'affiche qu'une partie de ce que je souhaite.
Je m'explique. Prenons le login suivant : ait/hellail-katia (le "/" remplace l'espace qu'il y a normalement dans le nom.
Avec la fonction précédente, quand je le test avec des "System.out.println", je récupère bien "ait hellail". Mais la valeur qui est retournée dans la zone de texte est la suivante : "ait" et je n'ai pas le "hellail" qui devrait suivre...
Je ne sais pas d'où ca peut venir... Si quelqu'un a une idée... Par avance, merci !
Edit:
PS : J'ai réalisé des test dans un main quelconque, et la fonction me retourne bien "ait hellail"... J'ai pensé alors que la zone de texte n'acceptais pas les espaces donc j'ai modifié un autre champ en ajoutant une valeur par défaut avec un espace et il me l'afficher correctement...
J'ai contourné mon problème. Voici donc mon nouveau code de ma JSP:
Et voici le code de ma fonction de mon programme java :
Cependant, je rencontre un nouveau problème. Le login que je récupère est sous la forme "dupont/-henry" (nom/-prénom). Pour ce genre de login, tout va bien. Mais dès qu'il s'agit d'un login avec mon composé, il ne m'affiche qu'une partie de ce que je souhaite.
Je m'explique. Prenons le login suivant : ait/hellail-katia (le "/" remplace l'espace qu'il y a normalement dans le nom.
Avec la fonction précédente, quand je le test avec des "System.out.println", je récupère bien "ait hellail". Mais la valeur qui est retournée dans la zone de texte est la suivante : "ait" et je n'ai pas le "hellail" qui devrait suivre...
Je ne sais pas d'où ca peut venir... Si quelqu'un a une idée... Par avance, merci !
Edit:
PS : J'ai réalisé des test dans un main quelconque, et la fonction me retourne bien "ait hellail"... J'ai pensé alors que la zone de texte n'acceptais pas les espaces donc j'ai modifié un autre champ en ajoutant une valeur par défaut avec un espace et il me l'afficher correctement...