Question

J'ai un problème f: convertDateTime, qu'il semble utiliser le message d'erreur javax.faces.converter.DateTimeConverter.DATE_detail quand je convertir le temps (il doit utiliser javax.faces .converter.DateTimeConverter.TIME_detail ).

La question, je suppose, est que j'utilise un modèle, et donc il ne sait pas si elle est une date ou une heure qu'il est attachant à convertir. Voilà ce que je suis en train ( "timePattern" est "hh.mm"):

<f:convertDateTime type="time" pattern="#{timePattern}" />

Même si type = "temps" est spécifié, il utilise toujours le DATE_detail message d'erreur. Est-ce un bug ou est mon hypothèse selon laquelle il devrait utiliser le TIME_detail message d'erreur mal, et je dois créer mon propre convertisseur?

Était-ce utile?

La solution

Malheureusement, c'est aussi ce que le DateTimeConverter javadoc est dit. Voici un extrait de pertinence:

  

Si un pattern a été spécifié, sa syntaxe doit être conforme aux règles définies par java.text.SimpleDateFormat. Un tel modèle sera utilisé pour analyser, et le type, dateStyle et propriétés timeStyle seront ignorées.

Je dois cependant admettre que les garçons JSF devaient préciser explicitement dans la f:convertDateTime pdldoc aussi. Il est pas évident à partir de là. Je signaler un problème aux garçons JSF pour les amener à clarifier cette partie.

Pour que cela fonctionne, votre meilleur pari est soit de ne pas compter sur le motif, mais type, dateStyle et timeStyle (et les paramètres régionaux) à la place, ou créer un convertisseur de temps de date personnalisé qui extends DateTimeConverter et bloque les méthodes en conséquence.

Autres conseils

Vous devez également définir javax.faces.converter.DateTimeConverter.TIME dans vos messages.

Regardez ici: http://www.icefaces.org/JForum/ messages / liste / 16119.page un poste avant dernier.

Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top