domenica 20 settembre 2009

se proprio java non vede la data giusta...

Se proprio le hai tentate tutte ed il tempo stringe..e la tua macchina linux ha una certa ora mentre la tu applicazione giava non la vuole leggere correttamente...

Naturalmente hai già fatto:

  1. run.conf di jboss con opzione-Duser.language=it -Duser.region =IT -Duser.timezone=Europe/Rome

  2. in faces-config.xml hai aggiunto:

    java.util.Date

..........CustomDateTimeConverter



che chiama:

public class CustomDateTimeConverter extends DateTimeConverter {
Logger log = Logger.getLogger(getClass().getName());

public CustomDateTimeConverter() {
super();
TimeZone tz = TimeZone.getTimeZone("Europe/Rome");
TimeZone.setDefault(TimeZone.getTimeZone("GMT"));
setTimeZone(tz);
setLocale(new Locale("it/IT"));
setPattern("d/M/yyyy");
}
}


Alla fine incazzato come una iena:

public static Date getDateLinux() {
try {
String data = CommandLauncher.executeCmd(new String[] { "date",
"+%m/%d/%Y %H:%M:%S" });
log.info("DATA LINUX: " + data);
SimpleDateFormat formatLINUX = new SimpleDateFormat(
"MM/dd/yyyy HH:mm:ss");
Date parsed1 = formatLINUX.parse(data);
log.info("DATA LINUX FROM JAVA: " + parsed1);
return parsed1;
} catch (ParseException e) {
// TODO Auto-generated catch block
e.printStackTrace();
return null;
}
}

Nessun commento: