Ver Mensaje Individual
  #1 (permalink)  
Antiguo 01/09/2013, 15:53
Beaker
 
Fecha de Ingreso: julio-2008
Mensajes: 36
Antigüedad: 16 años, 5 meses
Puntos: 0
Devolver Multiples Valores En JS Usando JSP

Que tal, antes que nada, les comento que tengo muy poca experiencia con programacion WEB, JSP y JS, los cuales me esta costando mucho aprender y entender.
Tengo una pagina en JSP la cual busca un registro en una base de datos cuando el usuario ingresa una cifra de 5 caracteres, y cuando lo encuentra, se despliega en pantalla la descripcion del registro, cuando no, se despliega en pantalla un mensaje. En el evento onclick, mando a llamar a una funcion en JavaScript, la cual manda a llamar a un JSP. Este codigo funciona bien, pero el problema es que ahora necesito que me devuelva mas de un campo, sino varios campos.
Mi codigo de JSP que manda a llamar al JS es el siguiente
Código:
 <td>
      <input type='text' id="clave" name="clave" size=5 maxlength=5 onkeyup="busca_clave(clave,existe);">  
      <span name="existe" id="existe" readonly="readonly" style="width: 200px" value="{existe}"></span></input> 
  </td>
El codigo de mi JS que contiene la funcion busca_clave es el siguiente
Código:
function busca_clave(clave,existe){
    objsal = clave;
    
    if(window.XMLHttpRequest)
        ajax = new XMLHttpRequest();
    ajax.onreadystatechange = funcionCallback;
    
    ajax.open("GET", "procesaClave.jsp?clave="+clave.value, 
    ajax.send("");
    
}
Y por ultimo, mi JSP procesaClave es el siguiente

Código:
<%
String clave= request.getParameter("clave");
String existe="";
String matri="";
String marca="";
Connection conexion  = null;

try{
    conexion = new Conexion().getConnection();
    PreparedStatement ps = conexion.prepareStatement("select * from autos where clave=? ");
    ps.setString(1, clave);
    ResultSet rs = ps.executeQuery();
    if(rs.next()){
        if((clave.length()) == 5){
            existe = rs.getString("descrip");
            matri = rs.getString("matri");
            marca= rs.getString("marca");
        }
    }else{
        if((noeco.length()) == 5){
            existe = "No existe";
        }
    }%>
    <%=existe%>
    <% rs.close();
}finally{
       
}
%>
Mi pregunta es, como modificar el codigo para que me devuelva multiples valores, que me devuelva existe, matri, marca y otros mas que necesito... Intente guardarlos todos en un HashMap y enviar y recibir ese objeto como parametro, pero siempre me sale null...
Agradezco de antemano la ayuda