Registro de data e hora do RFC 3339 de saída em Java

Desejo gerar um registro de data e hora com um deslocamento PST (por exemplo, 2008-11-13T13: 23: 30-08: 00).java.util.SimpleDateFormat parece não produzir deslocamentos de fuso horário nohora: minuto formato, exclui os dois pontos. Existe uma maneira simples de obter esse timestamp em Java?

// I want 2008-11-13T12:23:30-08:00
String timestamp = new SimpleDateFormat("yyyy-MM-dd'T'h:m:ssZ").format(new Date());
System.out.println(timestamp); 
// prints "2008-11-13T12:23:30-0800" See the difference?

Além disso,SimpleDateFormat não pode analisar adequadamente o exemplo acima. Lança umParseException.

// Throws a ParseException
new SimpleDateFormat("yyyy-MM-dd'T'h:m:ssZ").parse("2008-11-13T13:23:30-08:00")

questionAnswers(8)

yourAnswerToTheQuestion