PDA

Visualizza la versione completa : [JAVA] JSP e il formato della data


gus72
26-06-2001, 09:55
Egregi Signori,

vi chiedo cortesemente di aiutarmi a risolvere un problema.

Sapete come fare per leggere da una JSP, attraverso codice Java, il formato della data del PC sul quale la JSP stessa é stata caricata?

Ringrazio e porgo i miei saluti.
gus72

alex123
26-06-2001, 10:14
E' questo che volevi sapere?

<%@page import="java.util.Date"%>
<html>
<title>Hello Word!</title>
<body>
LA DATA CORRENTE E' <%= new Date().toString() %>
</body>
</html>

gus72
26-06-2001, 10:49
No Alex, non é questo, questo lo sapevo.
Quello che chiedo é la seguente cosa

i formati delle date sono differenti a secoda del paese in cui ci si trova esempio:

EUROPA - dd/mm/yyyy
USA - mm/dd/yyyy

A seconda del paese in cui ci si trova é presumibile che windows sia installato con il paese quello di appartenenza, quindi se ci troviamo negli USA windows sará installato con paese USA e lingua Inglese. In questo caso windows rappresenta la data nel formato che ti ho detto: mm/gg/yyyy

Allora la mia domanda é:

esiste in JAVA un modo per andare a vedere qual é la Nazione su cui é settato il pc su cui gira una jsp per poter da essa risalire al formato della data?

Grazie
gus72

MMonica
26-06-2001, 16:45
Non credo che in JSP ci si riesca, pui provare con la classe java.util.Locale, ma ho il dubbio che ritorni la lingua del sistema operativo del server su cui e' pubblicato il sito.

Le uniche due possibilita' che mi vengono in mente sono:
1) Attraverso un javascript vai a leggere la lingua del browser (dovrebbe esserci qualcosa di simile), poi, sempre se riesci ad unire java a javascript fai quello che devi fare.

2) C'e' una gestione simile a quello che tu vuoi fare nel progetto Struts di Jakarta
http://jakarta.apache.org/struts/index.html
Ti consiglio la versione 1.0, quella piu' recente e' molto piu' complicata e decisamente diversa. E' un progetto che sfrutta il modello di programmazione MVC.
Vedi tu se hai voglia di studiartelo. Io per ora sto usando la versione 0.5 e infatti ha una serie di librerie proprio per la gestione del Locale dei browser. Peccato pero' che questa versione abbia un bug proprio in quello che serve a te. Nella 1.0 dovrebberlo averlo risolto.

Fammi sapere
Monica

gus72
28-06-2001, 12:09
E se lo facessi con un applet non risolverei il problema? In quel caso la classe Locale non leggerebbe dal server ma dal client cosa ne pensi?
gus72

MMonica
02-07-2001, 19:23
Mi sembra una bella idea, dovresti provare.
Se funziona fammelo sapere.
Ciao
Monica

blueice
04-07-2001, 09:51
Se usi un db puoi richiederla direttamente lì l'ora.
Io usavo un db oracle 8 e facevo questa select.
SELECT to_char(sysdate,'GG/MM/YYYY') from dual;

La select fino a sysdate mi sembra chiara, successivamente devi specificargli il formato in cui vuoi vedere la data del db/server.
GG - giorni
MM - mesi in numeri
MON - mesi in lettere (inglese)
YYYY - anni
HH24 - ore espresse in 24 ore
MIN - minuti
SS - secondi

per dividere la data puoi usare qualsiasi simbolo all'interno degli apici 'GG-MM/YYYY ' quando gli vai a specificare il formato da visualizzare.
Blueice

zinasoft
04-07-2001, 18:46
Penso che l'unico modo sia utilizzare un applet o un javascript, perchè con JSP non è possibile a meno che il client non invii al server l'informazione per la visulizzazione dell'ora prima che la pagina di riposta venga generata, capito cosa intendo?

Ciao
mzinato@html.it

nosferatu_net
29-01-2003, 16:50
Riesumo questo vecchio thread per dovere di cronaca:

request.getLocale();
E' un metodo che HTTPServletRequest eredita da ServletRequest.

Comunque se l'utilità di sapere la lingua del browser riguarda l'output di messaggi in lingua, non è molto furbo fidarsi di quello che gli utenti settano nel browser, perché molti lasciano la lingua di default su Inglese semplicemente perché non hanno mai aperto la scheda di configurazione lingue del browser.
Forse la soluzione migliore è mettere una bella tendina all'ingresso del sito o da qualche altra parte.

userfra
29-01-2003, 17:15
con SimpleDateFormat

Loading