Bonjour,

Dans le fd, tu déclares ce que tu veux voir au niveau de ton client, c'est à dire le browser :

<fd:field id="dtstart">
    <fd:datatype base="date">
        <fd:convertor>
          <fd:patterns>
            <fd:pattern>dd/MM/yyyy HH:mm:ss</fd:pattern>
          </fd:patterns>
        </fd:convertor>
    </fd:datatype>
</fd:field>

Au niveau du fb, tu déclares le format de stockage de la date :

<fb:value id="dtstart" path="dtstart">
    <fd:convertor datatype="date" type="formatting" variant="datetime">
        <fd:patterns>
            <fd:pattern>yyyy-MM-dd'T'HH:mm:ss.SSSZ</fd:pattern>
        </fd:patterns>
    </fd:convertor>
</fb:value>

Dans le cas ci-dessus, tu as une date à un format standardisé (par exemple: 2005-10-24T20:23:00.000+0100)

De plus, tu peux ajouter un attribut locale dans le premier cas qui te permettra d'adapter ta présentation selon la langue de ton client :
    <fd:pattern locale="fr_FR">dd/MM/yyyy HH:mm:ss</fd:pattern>

Jean-Christophe

Sylvain Wallez a écrit :
Aurélien DEHAY wrote:

Bonjour à tous.

Une question, forcément existentielle donc, histoire de faire les choses
le plus proprement possible.

J'ai un formulaire, dans lequel l'utilisateur rentre une date. J'aimerai
que cette date soit stockée de la même manière quelque soit la locale de
l'utilisateur, pour ensuite être rendue correctement dans la locale du
navigateur.

J'utilise cocoon 2.1.7, j'avais déjà posé la question sur la lidie
anglaise, on m'avait renvoyé sur
http://www.mail-archive.com/dev@cocoon.apache.org/msg33411.html mais je
n'utilise pas Javaflow, et je me vois mal patcher tout ça.

Si quelqu'un avait déjà réfléchi à ça, je suis preneur (en 2.1.7 ou 2.1.8).


Un élément essentiel de Cocoon Forms est que l'appli n'a pas à se préoccuper des formats de saisie. Si un field est de type "date", sa valeur (renvoyée par getValue()) sera une java.util.Date, et pas une String.

Les formats sont spécifiés dans le <fd:convertor> et on peut indiquer des formats dépendant de la locale [1]. Si le formulaire est ensuite stocké dans un document XML, et puisque XML est du texte, on peut aussi spécifier dans le binding <fb:value> le format de stockage de la date dans le document [2].

Sylvain

[1] http://cocoon.zones.apache.org/daisy/documentation/forms/concepts/487.html [2] http://cocoon.zones.apache.org/daisy/documentation/forms/binding/488.html



--

BlueXML
Jean-Christophe Kermagoret
Directeur associé
[EMAIL PROTECTED]


---------------------------------------------------------------------
Liste francophone Apache Cocoon -- http://cocoon.apache.org/fr/
Pour vous desinscrire : mailto:[EMAIL PROTECTED]
Autres commandes : mailto:[EMAIL PROTECTED]

Reply via email to