Foros del Web » Programación para mayores de 30 ;) » Java »

[SOLUCIONADO] Obtener Parametro de HTTPServletRequest

Estas en el tema de Obtener Parametro de HTTPServletRequest en el foro de Java en Foros del Web. Hola. Necesito sacar los parametros de un HTTPServletRequest, estos los envio a traves de ajax, pero al tratar de obtenerlos en el servlet me sale ...
  #1 (permalink)  
Antiguo 23/11/2014, 14:09
Avatar de Andreslrz  
Fecha de Ingreso: septiembre-2008
Mensajes: 99
Antigüedad: 15 años, 8 meses
Puntos: 2
Busqueda Obtener Parametro de HTTPServletRequest

Hola.

Necesito sacar los parametros de un HTTPServletRequest, estos los envio a traves de ajax, pero al tratar de obtenerlos en el servlet me sale error 500, use el request.getParameterMap() y mire si este estaba vacio y no lo esta, lo que quiere decir que hay datos, pero estos datos me llegan como objetos, ya que cuando trato de sacarlos me muestra esto: [Ljava.lang.String;@756e170f, y si lo convierto a String me salta error. Dejo el codigo para que miren que puede ser el error.

Codigo java
Código:
protected void processRequest(HttpServletRequest request, HttpServletResponse response)
            throws ServletException, IOException {
        response.setContentType("text/html;charset=UTF-8");
        Map param=request.getParameterMap();
        
        try (PrintWriter out = response.getWriter()) {
               out.println(param.get("dato"));
        }
    }
Ajax
Código:
$('#search').click(function(event){
       
       var atrib=$("input[name='attribute']:checked").val();
       alert(atrib);
       var dat=$('#dato').val();
       alert(dat);
       var param={atributo:atrib, dato:dat};
       $.post('UserSearch', param,function(responseText) {
          $("#tabla").html(responseText); 
       } );
   });
Agradesco cualquier ayuda.
  #2 (permalink)  
Antiguo 24/11/2014, 01:53
Avatar de Profesor_Falken  
Fecha de Ingreso: agosto-2014
Ubicación: Mountain View
Mensajes: 1.323
Antigüedad: 9 años, 8 meses
Puntos: 182
Respuesta: Obtener Parametro de HTTPServletRequest

Buenas,

No te hace casting porque estas intenando convertir un String[] a String. El getParameterMap devuelce un mapa de <String,String[]>

De cualquier forma, para lo que estas haciendo no tiene ningun sentido utilizar el getParameterMap. Todos los parametros pasados por Post llegan al servlet como un mapa de Strings que son facilmente tratables mediante getParameter.

Código Java:
Ver original
  1. protected void processRequest(HttpServletRequest request, HttpServletResponse response)
  2.             throws ServletException, IOException {
  3.         response.setContentType("text/html;charset=UTF-8");
  4.         String atributo=request.getParameter("atributo");
  5.         String dato=request.getParameter("dato");
  6.        
  7.         try (PrintWriter out = response.getWriter()) {
  8.                out.println(dato);
  9.                out.println(atributo);
  10.         }
  11.     }

Un saludo
__________________
If to err is human, then programmers are the most human of us
  #3 (permalink)  
Antiguo 24/11/2014, 10:54
Avatar de Andreslrz  
Fecha de Ingreso: septiembre-2008
Mensajes: 99
Antigüedad: 15 años, 8 meses
Puntos: 2
Respuesta: Obtener Parametro de HTTPServletRequest

Gracias por tu respuesta.

Ya habia solucionado, solo estaba usando el map como prueba ya que el getParamter() no me retornaba los datos, me toco utilizar el getParameterValues() y guardar los datos en un array ->String[] dato=request.getParameterValues("midato") para cada dato que mande, algo raro ya que no mande ningun array pero debe ser por lo del map <String, String[]> que me retorna un array.

Etiquetas: parametro, servlet, string
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 04:21.