Ajuda Java Web

Bom dia galera,
estou com uma duvida,
tenha na minha aplicação uma busca ao banco de dados por uma pagina jsp,
dessa forma esta montada no jsp:

[code]
<%

    String pa = (String) request.getAttribute("idpa");    
    String rst = (String) request.getAttribute("rst");
    String duracao1 = (String) request.getParameter("dur1");
    String duracao2 = (String) request.getParameter("dur2");
    String hora1 = (String) request.getParameter("hr1");
    String hora2 = (String) request.getParameter("hr2");
int result;        
    int idpa;
    int dur1;
    int dur2;
int hr1;
    int hr2;
	
try {
     result = Integer.parseInt(rst);    
   }
   catch (NumberFormatException ex) {
     result  = 0;
   }
   try {
      idpa = Integer.parseInt(pa); 
   } catch (NumberFormatException e) {
      idpa = 0;
   }
    
   
   try {
       dur1 = Integer.parseInt(duracao1);
   } catch (NumberFormatException du) {
  dur1 = 0;
   }
   
   try {
       dur2 = Integer.parseInt(duracao2);
   } catch (NumberFormatException du2) {
       dur2 = 0;
   }
    
    
   try{
       hr1 = Integer.parseInt(hora1);
   } catch(NumberFormatException hr){
       hr1 = 0;
   }
    
   try{
       hr2 = Integer.parseInt(hora2);
   } catch(NumberFormatException hr){
       hr2 = 0;
   }
    
    
   if(result==1){
                String data1 = request.getParameter("data1");
                String data2 = request.getParameter("data2");

		
          %> <script>alert('Nenhum registro para este relatório: \nData entre <%= data1 %> e  <%=data2 %>  \nDuracao entre <%=duracao1 %> e <%=duracao2 %> minutos \nHorario entre: <%=hora1 %> e <%=hora2 %> horas');</script> <%
   }	   

%>[/code]

E busco dessa forma:

<td width="21%"><span class="style2">
                                    <input name="duracao1" id="duracao1" type="text" value="00" size="2" />
                                    </span></td>
<td width="15%"><span class="style2">
				    <input name="duracao2" id="duracao2" type="text" value="99" size="2" />
                                    </span></td>
<td width="30%"><span class="style2">
                                      <input name="hora1" id="hora1" maxlength="5" onKeyPress="return(currencyHour(this,':',':',event))" type="text" size="5" value="00:00:00"/>
                                    </span></td>
<td width="30%" valign="bottom"><span class="style2">
                                      <input name="hora2" id="hora2" value="23:59:59" type="text" onKeyPress="return(currencyHour(this,':',':',event))" size="5" maxlength="5"/>
                                      </span>

Porém qd busco ele vem com resultado pra duraçao e hora null !!
Testei o sql direto no bd e funcionou perfeitamente, mas qd faço no jsp vem NULL como resultado!
Gostaria de saber se alguém sabe o q estou fazendo de errado!
Desde já agradeço

Posta um trecho da classe que faz a consulta no banco.
Pode ser erro de conversão de tipos.

[code]
public List pesquisarDT(String data1, String data2, String duracao, String duracao1, String duracao2,
String tipo, String importante,
String ouvida, String procurar, String hora, String hora1, String hora2, String pa){

    List resultado = null;
    String sql;
    
    
    sql="select * from ligacoes where (data_lig between  ? and ? ) ";
    
    if(!tipo.equals("todas")){
            sql+=" and tipo = ? ";
        }
        if(importante.equals("importante")){
            sql+=" and importante = true ";
        }
        if(ouvida.equals("ouvida")){
            sql+=" and ouvida = false ";
        }
        if (!pa.equals("")){
            sql+=" and pa_atendimento = ? ";
        }
        if(!procurar.equals("")){
            sql+=" and (contato like ? or duracao or observacao like ? or telefone like ? or hora like ?) ";
        }

        if(!hora.equals("")){
            sql+=" and (hora between ? and ?)";
        }
    
        if(!duracao.equals("")){
            sql+="and (duracao between ? and ?)";
        }
    
        if(tipo.equals("todas")){
            sql+="order by [data_lig] desc, [hora] desc";
        }
        else {
            sql+="order by [data_lig] desc, [hora] desc";
        }
    
    try {
        Connection con = Conexao.getConexaoODBC();
        PreparedStatement pstm = con.prepareStatement(sql);
        pstm.setString(1, data1 );
        pstm.setString(2, data2 );
        if(!tipo.equals("todas")){
         pstm.setString(3, tipo );
               if (!procurar.equals("")) {
                   if(!pa.equals("")){
                       pstm.setString(4, pa);
                       if (!procurar.equals("")) {
                           pstm.setString(5, "%" + procurar + "%");
                           pstm.setString(6, "%" + procurar + "%");
                           pstm.setString(7, "%" + procurar + "%");
                           pstm.setString(8, "%" + procurar + "%");
                       }
                       if (!hora.equals("")){
                           pstm.setString(9, "%" + hora1 + "%");
                           pstm.setString(10, "%" + hora2 + "%");
                       }
                       if (!duracao.equals("")){
                           pstm.setString(11,duracao1);
                           pstm.setString(12,duracao2);
                       }
                   }else{
                       pstm.setString(4, "%" + procurar + "%");
                       pstm.setString(5, "%" + procurar + "%");
                       pstm.setString(6, "%" + procurar + "%");
                       pstm.setString(7, "%" + procurar + "%");
                   }
               }else{
                   if(!pa.equals("")){
                       pstm.setString(4, pa);
                   }
               }
        }

        if(tipo.equals("todas")){
               if(!pa.equals("")){
                       pstm.setString(3, pa);
                       if (!procurar.equals("")) {
                           pstm.setString(4, "%"+procurar+"%");
                           pstm.setString(5, "%"+procurar+"%");
                           pstm.setString(6, "%"+procurar+"%");
                           pstm.setString(7, "%"+procurar+"%");                              
                       }
                       if (!hora.equals("")){
                           pstm.setString(8, "%"+hora1+"%");
                           pstm.setString(9, "%"+hora2+"%");
                       }
                       if(!duracao.equals("")){
                           pstm.setString(10,duracao1);
                           pstm.setString(11,duracao2);
                       }
                       
                }else {
                    if (!procurar.equals("")){
                        pstm.setString(3, "%" + procurar + "%");
                        pstm.setString(4, "%" + procurar + "%");
                        pstm.setString(5, "%" + procurar + "%");
                        pstm.setString(6, "%" + procurar + "%");
                    }
               }
        }

        ResultSet rs = pstm.executeQuery();

        if(rs.next()){
            resultado = new ArrayList();

                do {
                    PesquisaVO pesquisa = preencherpesquisa(rs);
                    resultado.add(pesquisa);
                } while (rs.next());

        }
        rs.close();
        pstm.close();
        con.close();

        return resultado;
    } catch (Exception ex) {
        ex.printStackTrace();
        return null;
    }
}[/code]

no Servlet esta assim:

 public void doGet(HttpServletRequest request, HttpServletResponse response) throws
            ServletException, IOException {
        response.setContentType(CONTENT_TYPE);
        PrintWriter out = response.getWriter();
        HttpSession session = request.getSession();
        Object done = session.getAttribute("logon.isDone");
       
        if(done==null){
           response.sendRedirect("login.jsp");
           return;
        }
        Object uservr =  session.getAttribute("uservr");
        if(done.equals("admin")){
            uservr = "true";
        }
        if(uservr.equals("false")){
           response.sendRedirect("index.jsp");
           return;
        }
        String url = null;
        String rst = "1";
        String data1 = request.getParameter("data1");
        String data2 = request.getParameter("data2");
        String duracao1 = request.getParameter("duracao1");
        String duracao2 = request.getParameter("duracao2");
        String tipo = request.getParameter("tipo");
        String media = request.getParameter("op1");
        String importante = request.getParameter("op2");
        String ouvida = request.getParameter("op3");
        String procurar = request.getParameter("procurar");
        String hora = request.getParameter("hora");
        String hora1 = request.getParameter("hora1");
        String hora2 = request.getParameter("hora2");
        String duracao = request.getParameter("duracao");
        String pa = request.getParameter("pa");
     if (data1 == null) {
       data1 = "";
     }
     if (data2 == null) {
       data2 = "";
     }
        
     if (duracao1 == null){
            duracao1 = "";
     }
        
     if (duracao2 == null){
            duracao2 = "";
     }
     if (tipo == null) {
       tipo = "";
     }
     if (media == null) {
       media = "";
     }

     if (importante == null) {
       importante = "";
     }
     if (ouvida == null) {
       ouvida = "";
     }
     if (procurar == null) {
       procurar = "";
     }
        
     if (hora == null) {
       hora = "";
     }
        
     if (hora1 == null){
       hora1 = "";
     }
        
      if (hora2 == null){
        hora2 = "";
      }
       
     if (duracao == null){
       duracao = "";
     }
     if (pa.equals("todas")) {
       pa = "";
     }

         if(!media.equals("media")){
             PesquisaDAO dao = new PesquisaDAO();
         List resultado = dao.pesquisarDT(data1, data2, duracao1, duracao2, duracao, tipo, importante, ouvida,
                                          procurar, hora, hora1, hora2, pa);
         if (resultado != null) {
             //out.print("carregando");
             //String grid = montaGrid(resultado);
             //request.setAttribute("resultado", resultado);             
             session.setAttribute("resultado", resultado);
             //request.setAttribute("grid", grid);
             url="sites/resultado.jsp";
             //url="resultado";
             request.setAttribute("url",url);
             RequestDispatcher dispacher = request.getRequestDispatcher(
                     "index.jsp");
             dispacher.forward(request, response);
         } else {             
             url="sites/pesquisa.jsp";
             request.setAttribute("rst",rst);
             request.setAttribute("url",url);
             RequestDispatcher dispacher = request.getRequestDispatcher(
                     "index.jsp?data1="+data1+"&data2="+data2);
             dispacher.forward(request, response);

         }
         }else{
             PesquisaDAO dao = new PesquisaDAO();
             List resultado = dao.pesquisarDMT(data1, data2, tipo, media,
                                               importante, ouvida, procurar, pa);
         if (resultado != null) {
             url="sites/resultadomedia.jsp";
             request.setAttribute("url",url);
             request.setAttribute("resultado", resultado);
             RequestDispatcher dispacher = request.getRequestDispatcher(
                     "index.jsp");
             dispacher.forward(request, response);
         } else {
             url="sites/pesquisa.jsp";
             request.setAttribute("rst",rst);
             request.setAttribute("url",url);
             RequestDispatcher dispacher = request.getRequestDispatcher(
                     "index.jsp?data1="+data1+"&data2="+data2);
             dispacher.forward(request, response);

         }

         }

         }
    
    private String montaGrid(List resultado){
        String MTgrid = "";        
        String cor = "ebebeb";
        
     for (Iterator iter = resultado.iterator(); iter.hasNext(); ) {
      PesquisaVO item = (PesquisaVO) iter.next();
  
           MTgrid += "<tr bgcolor='"+ cor +"'>"; 
           MTgrid += "<td align='center'><font size='1' face='Verdana, Arial, Helvetica, sans-serif'>" ;
                   
           if(item.isImportante()==true){
           MTgrid += "<img src='componentes/imagens/28.gif' width='19' height='19' >";
           } 
           MTgrid += "</font></td>";
           MTgrid += "<td> <div align='center'><font size='1' face='Verdana, Arial, Helvetica, sans-serif'>"+ item.getPa_atendimento() +"</font></div></td>";
           MTgrid += "<td > <div align='center'><font size='1' face='Verdana, Arial, Helvetica, sans-serif'>";
           if (item.getTipo().equals("originada")){
           MTgrid += "<img src='componentes/imagens/originada.gif' alt='Liga&ccedil;&otilde;es originadas   ' width='14' height='19'>"; 
           }else if(item.getTipo().equals("recebida")){
           MTgrid += "<img src='componentes/imagens/recebida.gif' alt='Liga&ccedil;&otilde;es recebidas ' width='14' height='19'>"; 
           }else{
           MTgrid += "<img src='componentes/imagens/naoatendida.gif' alt='Liga&ccedil;&otilde;es n&atilde;o atendidas ' width='19' height='19'>"; 
           } 
           MTgrid += "</font></div></td>";
           MTgrid += "<td> <font size='1' face='Verdana, Arial, Helvetica, sans-serif'>"+ item.getData_lig() +" </font></td>";
           MTgrid += "<td> <font size='1' face='Verdana, Arial, Helvetica, sans-serif'>"+ item.getHora() +" </font></td>";
           MTgrid += "<td> <font size='1' face='Verdana, Arial, Helvetica, sans-serif'>"+ item.getDuracao() +" </font></td>";
           MTgrid += "<td> <font size='1' face='Verdana, Arial, Helvetica, sans-serif'>"+ item.getTelefone() +" </font></td>";
           MTgrid += "<td> <font size='1' face='Verdana, Arial, Helvetica, sans-serif'>"+ item.getContato() +" </font></td>";
           MTgrid += "<td> <font size='1' face='Verdana, Arial, Helvetica, sans-serif'>"+ item.getObservacao() +" </font></td>";
           MTgrid += "<td> <font size='1' face='Verdana, Arial, Helvetica, sans-serif'><a href=\"javascript:popUpWindow('pesquisaid?id="+item.getId() +"', 570, 150, 315, 105)\" " +
                   "onMouseOut='MM_swapImgRestore()' onMouseOver='MM_swapImage('Image6','','componentes/imagens/ouvirh.gif',1)'><img src='componentes/imagens/ouvir.gif' " +
                   "alt='Ouvir Gravação' name='Image6' width='59' height='17' border='0'></a></font></td>";
           MTgrid += "<td> <font size='1' face='Verdana, Arial, Helvetica, sans-serif'><a href=\"BaixarMp3="+item.getId() +" " +
                   "onMouseOut='MM_swapImgRestore()' onMouseOver='MM_swapImage('Image6','','/componentes/imagens/baixar2.gif',1)'><img src='componentes/imagens/baixar2.gif' " +
                   "alt='Fazer Download' name='Image7' width='59' height='17' border='0'></a></font></td>";
           MTgrid += "</tr>" ;
                   
  	if(cor.equals("ebebeb")){
          cor = "d6c9d7";
	}else{
          cor = "ebebeb"; 
        }
    }
        
        return MTgrid;
    }