Problemas com datas no MySql JSP

Olá pessoal.
Estou com um sério problema, não consigo inserir dados do tipo Date no mysql, as variáveis estão declaradas como
java.sql.Date nas minhas classes.
Quando eu envio o formulário, um erro é retornado informando que o valor é nulo mas
os nomes dos parametros estão corretos.
Estou usando preparedStatement, os códigos de consultas estão todos corretos, pois eu mudei os tipos das variaveis para String para fazer os testes e funcionou, o problema é quando mudo o tipo para Date, dá erro.
Preciso fazer alguma conversão?

Desde já agradeço aos que poderem me ajudar.

Eu não sei se é isso mesmo.
Mas quando um insiro um valor hora(HH:mm:ss) para salvar no banco via swing, tenho que fazer uma conversão de String em TIME.

[code]public Time formataHora (String data) {

    Time dataF = null;   
    try {   
        DateFormat dateFormat = new SimpleDateFormat("HH:mm:ss");   
        long tempo = dateFormat.parse(data).getTime();   
        dataF = new Time(tempo);   
    } catch (ParseException pe) {   
        System.out.println("deu erro na conversão");   
    }   
    return dataF;   

}[/code]

Eu não testei utilizando o Date, mas acredito que é apenas trocar o Time pelo Date nesse metodo acima!
Espero ter ajudado!

 mateus.cordeiro
 Muito obrigado pela atenção, mas ainda não resolveu meu problema.
 Eu mudei o tipo das variaveis correspondentes as datas, de java.sql.date para  java.util.Calendar.
 E criei um metodo para converter uma string (tipo de dado do parametro) para java.util.Calendar.

       public Calendar data(String dataFabricacao){
	Calendar dataFab = null;
	try {
	
        java.util.Date date = new SimpleDateFormat("dd/mm/yyyy").parse(dataFabricacao);
	dataFab = Calendar.getInstance();
	dataFab.setTime(date);
	System.out.println(dataFab);
	} catch (Exception e) {
	System.out.println("Erro de conversao da data"+e.getMessage());
	}
	return dataFab;
   }

     No jsp eu uso este metodo para realizar a conversao :

       String dataFabricacao = request.getParameter("dataFabricacao");
       equipamento.setDataFabricacao(DAOequipamento.data(dataFabricacao)); 


      O metodo de cadastro é o seguinte:


   public void cadastrarEquipamento(Equipamento equipamento) throws Exception {

	conectar();
	try {

		String sql = ("insert into Equipamento               (equipamento,classificacao,modelo,num_serie,data_fabricacao,garantia,fabricante,num_patrimonio) values(?,?,?,?,?,?,?,?);");
		pStm = conn.prepareStatement(sql);
		pStm.setString(1, equipamento.getEquipamento());
		pStm.setString(2, equipamento.getClassificacao());
		pStm.setString(3, equipamento.getModelo());
		pStm.setString(4, equipamento.getNumeroSerie());
		pStm.setDate(5,new Date(equipamento.getDataFabricacao().getTimeInMillis()));
		pStm.setInt(6, equipamento.getGarantia());		
		pStm.setString(7, equipamento.getFabricante());			
		pStm.setInt(8, equipamento.getNumPatrimonio());
		pStm.execute();

	} catch (SQLException e) {
		throw new Exception(e.getMessage());
	} finally {

		fechar();
	}

 }

Até aqui tudo bem, está cadastrando certinho, oproblema agora é que parte da data referente ao mês, está sendo gravao no banco como sendo 00.

O que pode está dando errado agora?

Cara, eu testei aqui e funcionou utilizando o Date do SQL.
import java.sql.Date;

Não sei se seria a melhor solução.
Porem, acredito que por hora resolve seu problema.

  Cara, valeu mesmo pela atenção, eu já resolvi o problema. Era a maior besteira, era apenas a máscara do SimpleDateFormat que estava errada!  
 Mas de qualquer maneira, muito obrigado pela ajuda.