Ver Mensaje Individual
  #1 (permalink)  
Antiguo 13/02/2009, 00:01
Avatar de optimus100
optimus100
 
Fecha de Ingreso: febrero-2009
Mensajes: 45
Antigüedad: 15 años, 10 meses
Puntos: 0
Acceder a diferentes tablas de mysql con struts

Hola a todos, como muchos otros en este foro soy novato en esto de la programaciion con struts, asi pues la duda que tengo es la siguiente:

1. deseo realizar una consulta simultanea a diferentes tablas de mi BD en mysql a traves de la clase DAO este es el ejemplo que realizado pero no me funciona:

Código PHP:

public ConsultarSociosVO getConsultarFolio (ConsultarSociosVO consultarVO)throws Exception
{
 
     try{
            if(
this.conexion==null){
            
this.getConnection ();
            }

        final 
StringBuffer sentenciaSql = new StringBuffer();

      
sentenciaSql.append(" SELECT sc.fsocio, sc.nombre, sc.app, sc.apm, sc.finscripcion, sc.fexamen, sc.nombre2, sc.app2, sc.nombre3, sc.app3,"+
                          
" ac1.actividad, ac1.dias, ac1.servicio, ac1.instructor, ac1.finicio, ac1.ftermino,"+
                          
" ac2.actividad2, ac2.dias2, ac2.servicio2, ac2.instructor2, ac2.finicio2, ac2.ftermino2,"+
                          
" ac3.actividad3, ac3.dias3, ac3.servicio3, ac3.instructor3, ac3.finicio3, ac3.ftermino3,"+
                          
" rc.tcasillero, rc.localizacion, rc.numero, rc.finicioCa, rc.fterminoCa, rr.visita_mensual, rr.finicioRe, rr.fterminoRe"+
                          
" FROM  socios sc, actividad_1 ac1, actividad_2 ac2, actividad_3 ac3, rentacasilleros rc, rentaregaderas rr"+
                          
" WHERE  sc.fsocio=?");

     

      
pst conexion.prepareStatement(sentenciaSql.toString());
      
pst.setInt(1consultarVO.getFsocio());
      
      
resultSet pst.executeQuery();
      
//se procesa la sentencia y asignan los valores al Form
      //checar si regresa o no NULL
      
while((resultSet != null) && resultSet.next()) {
     

        
consultarVO.setFsocio(resultSet.getInt("fsocio"));
        
consultarVO.setNombre(resultSet.getString("nombre"));
        
consultarVO.setPaterno(resultSet.getString("app"));
        
consultarVO.setMaterno(resultSet.getString("apm"));
        
consultarVO.setfinsc(resultSet.getString("finscripcion"));
        
consultarVO.setfexamen(resultSet.getString("fexamen"));
        
consultarVO.setNombre2(resultSet.getString("nombre2"));
        
consultarVO.setPaterno2(resultSet.getString("app2"));
        
consultarVO.setNombre3(resultSet.getString("nombre3"));
        
consultarVO.setfinsc(resultSet.getString("app3"));
        
consultarVO.setAct1(resultSet.getString("actividad"));
        
consultarVO.setDias1(resultSet.getString("dias"));
        
consultarVO.setTser1(resultSet.getString("servicio"));
        
consultarVO.setInst1(resultSet.getString("instructor"));
        
consultarVO.setfinicio(resultSet.getString("finicio"));
        
consultarVO.setftermino(resultSet.getString("ftermino"));
        
consultarVO.setAct2(resultSet.getString("actividad2"));
        
consultarVO.setDias2(resultSet.getString("dias2"));
        
consultarVO.setTser2(resultSet.getString("servicio2"));
        
consultarVO.setInst2(resultSet.getString("instructor2"));
        
consultarVO.setfinicio2(resultSet.getString("finicio2"));
        
consultarVO.setftermino2(resultSet.getString("ftermino2"));
        
consultarVO.setAct3(resultSet.getString("actividad3"));
        
consultarVO.setDias3(resultSet.getString("dias3"));
        
consultarVO.setTser3(resultSet.getString("servicio3"));
        
consultarVO.setInst3(resultSet.getString("instructor3"));
        
consultarVO.setfinicio3(resultSet.getString("finicio3"));
        
consultarVO.setftermino3(resultSet.getString("ftermino3"));
        
consultarVO.setTcasillero(resultSet.getString("tcasillero"));
        
consultarVO.setLocal(resultSet.getString("localizacion"));
        
consultarVO.setNumCasi(resultSet.getString("numero"));
        
consultarVO.setfinicioCa(resultSet.getString("finicioCa"));
        
consultarVO.setfterminoCa(resultSet.getString("fterminoCa"));
        
consultarVO.setVismen(resultSet.getString("visita_mensual"));
        
consultarVO.setfregaini(resultSet.getString("finicioRe"));
        
consultarVO.setfregater(resultSet.getString("fterminoRe"));

      } 
/// finaliza el while
     
      
    
}// fin del try
        
catch(Exception e){
            throw new 
Exception (e.getMessage());
}
//// fin del catch

finally {
  
    
resultSet.close();
  
   if (
pst != null){
    
pst.close();
   }
     
this.conexion.close();
}

 return 
consultarVO;



pues el problema es que al ejecutar el programa realiza todos los pasos correspondientes, esto es el jsp, form, y el action funcionan correctamente, pero en el DAO no me aparece ningun error pero no realiza la consulta, me manda al CATCH, pero no se porque, y obviamente no aparece nada en mi jsp que resivira la respuesta.

Las tablas que quiero consultar son SOCIOS, ACTIVIDAD_1., ACTIVIDAD_2, ACTIVIDAD_3, RENTACASILLEROS , Y RENTAREGADERAS.

el parametro que utiliza para iniciar la consulta es el folio del socio, solo que en mis tablas estan relacionadas todas (acti_1, act_2, etc...) con la tabla socios y por logica tambien en ellas aparece el campo fsocio(id del socio) como llave foranea.

si alguien puede ayudarme lo agradecere mucho.