Я работаю над WebService и в настоящее время пытаюсь сделать @GET
до @Produce
XML из List<>
, но получаю Http status 500
. Я пробовал разными способами, но все безуспешно. Как вы увидите, это очень простой пример, но он не работает ... какие-либо идеи!?
Это коды: если я изменю этот метод с List<>
на String
они работают правильно, но с List<>
они не работают.
//This doesnt work...
@GET
@Produces(MediaType.APPLICATION_XML)
public List<Usuario> getUsers(){
Usuario user1 = new Usuario("test", "test");
return (List<Usuario>) user1;
}
//this GET doesnt work
@GET
@Produces(MediaType.APPLICATION_JSON)
public List<Usuario> get(){
try {
return DaoUsuario.getInstance().listar();
} catch (SQLException ex) {
Logger.getLogger(UsuarioResource.class.getName()+
"Error al consultar la base datos"+ex.getMessage())
.log(Level.SEVERE, null, ex);
}
return null;
}
Это модель:
@XmlRootElement
public class Usuario {
private int id;
private String nombreUsuario;
private String contrasena;
public Usuario() {
}
public Usuario(String nombreUsuario, String contrasena) {
this.nombreUsuario = nombreUsuario;
this.contrasena = contrasena;
}
public int getId() {
return id;
}
public void setId(int id) {
this.id = id;
}
public String getNombreUsuario() {
return nombreUsuario;
}
public void setNombreUsuario(String nombreUsuario) {
this.nombreUsuario = nombreUsuario;
}
public String getContrasena() {
return contrasena;
}
public void setContrasena(String contrasena) {
this.contrasena = contrasena;
}
@Override
public String toString() {
return "\nId: "+id+"\nNombre usuario: "+nombreUsuario+"\nContrasena: "+contrasena+"\n\n";
}
}