Convertendo um objeto Date para um objeto de calendário [duplicado]

Esta pergunta já tem uma resposta aqui:

Data do objeto para o Calendário [Java] 7 respostas

Então, recebo um atributo de data de um objeto recebido no formato:

Tue May 24 05:05:16 EDT 2011

Estou escrevendo um método auxiliar simples para convertê-lo em um método de calendário, estava usando o seguinte código:

    public static Calendar DateToCalendar(Date date ) 
{ 
 Calendar cal = null;
 try {   
  DateFormat formatter = new SimpleDateFormat("yyyyMMdd");
  date = (Date)formatter.parse(date.toString()); 
  cal=Calendar.getInstance();
  cal.setTime(date);
  }
  catch (ParseException e)
  {
      System.out.println("Exception :"+e);  
  }  
  return cal;
 }

Para simular o objeto recebido, estou apenas atribuindo os valores dentro do código atualmente usando:

private Date m_lastActivityDate = new Date();

No entanto, isso está me dando um ponteiro nulo quando o método chegar:

date = (Date)formatter.parse(date.toString()); 

questionAnswers(4)

yourAnswerToTheQuestion