Bonjour
Lorsque je saisi le caractere é sous jboss wildfly il me renvoi ᅢᄅ ? pourtant je ne suis pas coreen ?
Une idee
Merci
J'utilise le standalone.xml d'origine sous wildfly 10 final en Windows7
Bonjour
Lorsque je saisi le caractere é sous jboss wildfly il me renvoi ᅢᄅ ? pourtant je ne suis pas coreen ?
Une idee
Merci
J'utilise le standalone.xml d'origine sous wildfly 10 final en Windows7
Bonjour,
Je suis dans un input (j'utilise JSP/struts2) et lorsque je saisis le caractère "é", et que je valide j'ai le caractère cooreen qui apparait.
Par contre le problème n'existe pas sous Tomcat, et le problème n'existe pas non plus sur la version pseudo EAP de Mr hasalex https://github.com/hasalex/eap-build
J'ai uniquement le soucis sur WildFly10 final.
Tu pourrais afficher les bytes de ce caractère dans la console lors de différentes étapes du traitement avec toByte("UTF-8")? Si il s'agit d'une db les valeurs y sont correctes? Avoir un har de ton post serait utile. Il faut générer ca avec l'inspecteur du brower onglet network.
Bonjour
Lorsque j'effectue une recherche négatif le programme me renvoi la donnée au format bizarre "ᅢᄅ".
Il n'y a donc rien dans la base.
Des le début de mon action en deboggage la donnée est déja mauvaise ?
1 La donnée lorsque je l'envoi
2 Le post "model.nom" est correct
3 L'ecran de retour ou la recherche est infructueuse avec l'affichage du mauvais caractère
4 La réponse ou la valeur de model.nom est mauvaise
Les parametres entetes
Dans la version EAP/Hasalex ou c'est correct, l’entête est légèrement différente
JSP 2.2 et le nom du serveur
J'ai le soucis en Wildfly9.02 également
Sous Eclipse en mode debuggage la donnée est mauvaise des le début de mon action, et le UTF-8 n'est pas supporté dans la fenetre d'expressions ?
Peut on voir ton code et ta configuration? As tu essayé avec un code JSP 'simple' (en prenant par exemple une application web de https://github.com/wildfly/quickstart) ?
La page web qui contient le formulaire, tu peux nous monter ses headers? Le accept-charset est bien définis? Dans ton post côté serveur que vaut request.getCharacterEncoding?
Bonjour
Le debut des pages JSP commence par
Le contenu de la page par
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4 <%@ taglib prefix="s" uri="/struts-tags"%> <%@ page language="java" contentType="text/html; charset=UTF-8" pageEncoding="UTF-8"%>
Il y a un filter
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
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38 <!DOCTYPE html> <html> <head> <meta charset="utf-8"> <meta name="viewport" content="width=device-width, initial-scale=1.0" /> <title>FFBT : Fédération Française de Ball-trap</title> <link rel="shortcut icon" type="image/x-icon" href="img/logo_ffbt.ico" /> <!-- CSS --> <link href="css/bootstrap.min.css" rel="stylesheet"> <link href="css/bootstrap-datepicker.min.css" rel="stylesheet"> <link href="css/jquery-ui.min.css" rel="stylesheet"> <link href="css/datatables.min.css" rel="stylesheet"> <link href="css/ffballtrap.css" rel="stylesheet"> <link href="css/main.css" rel="stylesheet"> <link href="css/chosen.min.css" rel="stylesheet"> <!-- JS --> <script src="js/jquery.min.js"></script> <script src="js/bootstrap.min.js"></script> <script src="js/ffballtrap.js"></script> <script src="js/jquery-ui.min.js"></script> <script src="js/jquery.bpopup.min.js"></script> <script src="js/jquery.displaytag-ajax-1.2.js"></script> <script src="js/datatables.min.js"></script> <script type="text/javascript" src="js/moment.min.js"></script> <script type="text/javascript" src="js/datetime-moment.js"></script> <script type="text/javascript" src="js/dataTables.buttons.min.js"></script> <script type="text/javascript" src="js/buttons.colVis.min.js"></script> <script type="text/javascript" src="js/buttons.html5.min.js"></script> <script type="text/javascript" src="js/buttons.print.min.js"></script> <script src="js/bootstrap-datepicker.min.js"></script> <script src="locales/bootstrap-datepicker.fr.min.js"></script> <script src="http://maps.google.com/maps/api/js?sensor=false"></script> <script type="text/javascript" src="js/chosen.jquery.min.js"></script>
Pourquoi sous Tomcat ou sous l'EAP Hasalex, je n'ai pas le soucis avec le meme WAR ?
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
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32 import java.io.IOException; import javax.servlet.Filter; import javax.servlet.FilterChain; import javax.servlet.FilterConfig; import javax.servlet.ServletException; import javax.servlet.ServletRequest; import javax.servlet.ServletResponse; public class CharacterEncodingFilter implements Filter { @Override public void init(FilterConfig filterConfig) throws ServletException { } @Override public void doFilter(ServletRequest servletRequest, ServletResponse servletResponse, FilterChain filterChain) throws IOException, ServletException { servletRequest.setCharacterEncoding("UTF-8"); servletResponse.setContentType("text/html; charset=UTF-8"); servletResponse.setCharacterEncoding("UTF-8"); filterChain.doFilter(servletRequest, servletResponse); } @Override public void destroy() { } }
J'ai refais un test en supprimant le contenu du Filter, et le soucis persiste !!
Lorsque je pose un point d'arret dans le filter, le request caracterEncoding est null ?
J'ai également mis dans le standalone.bat -Dfile.encoding=UTF-8 sans succes
Il n'y a pas de catalina.bat dans wildfly. Concernant ton affichage en debug de "characterEncoding", c'est normal que ce soit null tant que tu n'a rien spécifié. Tu n'a pas défini de charsetEnconding pour tes requêtes, tu peux le faire avec les commandes à la fin de ce bug report:
https://issues.jboss.org/browse/WFLY-2533
Ensuite, ton filter est une erreur: tout ce que renvoie ton application n'est pas nécessairement du text/html. Laisse les pages concernées en décider. Pour la partie request, le conteneur à tout ce qu'il faut comme configuration, inutile d'essayer de le contre carrer.
Bonsoir
Meme en enlevant le filter et en rajoutant via le cli les deux lignes de commandes, le problème persiste
En effectuant un "servletRequest.getParameterValues("model.numeroLicence")" en mode debuggage avant d'enlever le filter, la donnée est deja mauvaise !
Ma JSP
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 <%@ taglib prefix="s" uri="/struts-tags"%> <%@ page language="java" contentType="text/html; charset=UTF-8" pageEncoding="UTF-8"%> <div id="federation_rechercherLicencies"> <div class="panel panel-default"> <!-- Titre --> <div class="panel-heading"> <h3 class="panel-title text-center">RECHERCHE D'UN LICENCIE</h3> </div> <!-- Critères de recherche --> <div class="panel-body"> <form class="form-horizontal" method="post" id="formulaireRecherche" role="form" accept-charset="UTF-8">
Je viens de tester avec kitchensink-jsp et j'ai bien le même souci (à savoir utilisation de l'ISO-8859-1 plutôt que l'UTF-8 pour décoder le formulaire).
En appliquant les 2 commandes de tchize_ et après un reload du serveur tout est corrigé
D'ailleurs comme content-type de la requête j'ai "application/x-www-form-urlencoded" sans charset. Même en ajoutant le charset dans la balise form, Firefox me le retire car d'après la spec (HTML5)
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4 /subsystem=undertow/servlet-container=default:write-attribute(name=default-encoding,value=UTF-8) /subsystem=undertow/servlet-container=default:write-attribute(name=use-listener-encoding,value=true) :reload
Parameters on the application/x-www-form-urlencoded MIME type are ignored. In particular, this MIME type does not support the charset parameter.
Bonsoir
J'ai mis la version EAP/Hasalex pour me dépanner le temps de trouver le soucis, mais cela ne resoud pas le soucis.
C'est normal la version d'Alexis est basée sur JBoss EAp 6 qui utilise JBoss Web (un fork de Apache Tomcat). Comme je te l'ai indiqué j'ai testé avec https://github.com/wildfly/quickstar...itchensink-jsp et on reproduit bien ton souci jusqu'à ce que Undertow soit reconfiguré.
Il faut retirer les filtres et configurer Undertow (en n'oubliant pas le :reload après avoir modifié la configuration). Si ça fonctionne avec kitchensink ça fonctionnera avec ton application (ou alors il reste des choses à paramétrer dans Struts 2).
Bonjour
Je vais essayer cet exemple, ce que tu appel configurer "undertow" ce sont grace aux deux lignes ajoutées via le CLI ?
en plus des deux lignes ci dessus j'ai également essayé dans standalone.xml
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13 <system-properties> <property name="org.apache.catalina.connector.URI_ENCODING" value="UTF-8"/> <property name="org.apache.catalina.connector.USE_BODY_ENCODING_FOR_QUERY_STRING" value="true"/> <property name="file.encoding" value="UTF-8"/> <property name="StrutsConstants.STRUTS_I18N_ENCODING" value="UTF-8"/> <property name="sun.jnu.encoding" value="UTF-8"/> <property name="sun.io.unicode.encoding" value="UTF-8"/> </system-properties> <servlet-container name="default" use-listener-encoding="true" default-encoding="UTF-8">
Merci
Non, Undertow (http://undertow.io) est le conteneur de Servlets qui remplace JBoss Web (aka le fork de Tomcat) dans WildFly.
De ce fait les configurations faites pour Tomcat ne fonctionnent pas (tes 2 propriétés org.apache.catalina ne servent donc à rien).
Bonjour
Si j'ai bien compris la configuration de UNDERTOW pour UTF-8 se fait avec la ligne du CLI donné précedement
/subsystem=undertow/servlet-container=default:write-attribute(name=default-encoding,value=UTF-8)
Ce qui donne dans le standalone.xml
Mon soucis persiste !
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12 <system-properties> <property name="file.encoding" value="UTF-8"/> <property name="StrutsConstants.STRUTS_I18N_ENCODING" value="UTF-8"/> <property name="sun.jnu.encoding" value="UTF-8"/> <property name="sun.io.unicode.encoding" value="UTF-8"/> </system-properties> <servlet-container name="default" use-listener-encoding="true" default-encoding="UTF-8">
As tu essayé une autre application ? En fait je pense que ton souci est ta configuration Struts / ton application.
Bonsoir
J'ai juste essayé avec HelloWord struts2 et c'est Ok sous WildFly ?
Vous avez un bloqueur de publicités installé.
Le Club Developpez.com n'affiche que des publicités IT, discrètes et non intrusives.
Afin que nous puissions continuer à vous fournir gratuitement du contenu de qualité, merci de nous soutenir en désactivant votre bloqueur de publicités sur Developpez.com.
Partager