Empresas
Empleos
  • Sobre nosotros
  • Soluciones
    • Publicación de vacantes
      Publica tu vacante y recibe candidatos calificados en 48h.
    • Evaluación de candidatos
      500+ pruebas técnicas y psicológicas, más anti-fraude.
    • Headhunting
      Búsqueda ejecutiva a la medida de principio a fin.
    • Nómina + EOR
      Dispersión de nómina y EOR en más de 15 países de LATAM.
  • Precios
  • Empleos

0

210
Vistas
¿Por qué obtengo un valor nulo para algunos parámetros en el método de publicación de descanso jersy?

Estoy tratando de configurar un punto final de descanso con jersey. Estoy usando un cliente angular2.

el código angular se ve así:

 post() { let headers = new Headers({ 'Content-Type': 'application/json' }); this.http.post('http://localhost:8050/rest/addentity', JSON.stringify(this.getValues()), new RequestOptions({ headers: headers })). subscribe(data => { alert('ok'); }, error => { console.log(JSON.stringify(error.json())); }); }

La publicación se envía correctamente y puedo ver en la carga útil que todos los valores están allí.

Sin embargo, para dos valores siempre obtengo un valor nulo en el servidor. Aquí está el método:

 @POST @Consumes(MediaType.APPLICATION_JSON) @Path("addentity") public void saveEntity(User user) { System.out.println("ADD CALLED"); System.out.println(user.getId()); // null addUser(user); }

No tengo ni idea de porqué. El tipo de medio es correcto, obtengo una respuesta 204...

¿Alguien tiene alguna idea de lo que estoy haciendo mal?

EDITAR

JSON

 {"id":"1234", "name":"john", "age":15, "height":"6.2"}

Usuario

 public class User implements Serializable { private static final long serialVersionUID = -5320367665876425279L; private Integer userId; private String name; private double height; private int age; public User() { // TODO Auto-generated constructor stub } public User(final Integer userId, final String name, final double height, final int age) { this.userId = userId; this.name = name; this.height = height; this.age = age; } public Integer getuserId() { return userId; } public void setuserId(final Integer userId) { this.userId = userId; } public String getname() { return name; } public void setname(final String name) { this.name = name; } public double getheight() { return height; } public void setheight(final double height) { this.height = height; } public int getage() { return age; } public void setage(final int age) { this.age = age; } }

Todos los valores, excepto la altura, son null o 0 , por lo que solo se lee correctamente el valor doble.

over 4 years ago · Santiago Trujillo
1 Respuestas
Responde la pregunta

0

Bueno, su código real muestra muchos problemas, por lo que podemos afirmar:

  • En su clase User , tiene un atributo userId de usuario, mientras que en su JSON no lo tiene, es una id en su lugar.
  • Y los getters y setters en la clase User son incorrectos, deberían tener la primera letra del atributo en mayúsculas, es decir: getage() debería ser getAge() y setage debería ser setAge() .

Debe solucionar estos problemas; de lo contrario, su POJO no se asignará correctamente con su JSON.

Puede consultar Getters y Setters en la convención de Java para obtener más información al respecto.

over 4 years ago · Santiago Trujillo Denunciar
Responde la pregunta
Encuentra empleos remotos

¡Descubre la nueva forma de encontrar empleo!

Top de empleos
Top categorías de empleo
Empresas
Publicar vacante Precios Comercial
Legal
Términos y condiciones Política de privacidad
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Recomiéndame algunas ofertas
Necesito ayuda