[quote=Maurício Linhares]Estranho… Calendar é classe abstrata, não deveria poder ser instânciada… :shock:
[/quote]
Certo. Realmente não pode ser instânciada. Mas o Zevang não tá instânciando a classe Calendar, ele tá chamando o método getInstance() da classe Calendar que por sua vez chama o método estático getCalendar(…)
private static Calendar createCalendar(TimeZone zone,
Locale aLocale)
{
if (aLocale.getLanguage().compareTo("th") == 0) {
if (aLocale.getCountry().compareTo("TH") == 0) {
return new sun.util.BuddhistCalendar(zone, aLocale);
}
}
// else create the default calendar
return new GregorianCalendar(zone, aLocale);
}
O problema parece ser o seguinte: o método getTimeInMillis() é “public” em java 1.4 mas é “protected” em java 1.3
http://java.sun.com/j2se/1.3/docs/api/java/util/Calendar.html#getTimeInMillis()
http://java.sun.com/j2se/1.4.2/docs/api/java/util/Calendar.html#getTimeInMillis()
Então dá pra compilar com java 1.4 ou maior, mas não dá pra executar com 1.3 ou menor.
Assim, tem duas alternativas, ou você use java 1.4 para executar seu código, ou faça mundanças, utilizando código compatível com java 1.3
Por exemplo, o seguinte funciona:
Timestamp competencia = new Timestamp( data.getTime().getTime() );
Para instânciar a (subclasse da) classe Calendar eu acho tanto faz… seu jeito, ou o jeito indicado pelo Ilmo. Maurício.
Abraços,
Sami
PS. Lembrando minha promessa e dando uma olhada ao grupo Sentenced… muito animados esses nomes das músicas: :mrgreen: Vou ver se encontre um CD deles no supermercado.
- When the moment of death arrives (6:04)
- Rot to dead (3:45)
- Disengagement (5:17)
- Rotting ways to misery (5:50)
- The truth (6:23)
- Suffocating beginning of life (6:07)
- Beyond the distant valleys (6:00)
- Under the suffer (5:19)
- Descending curtain of death (5:51