У меня есть webservice для отдыха в http://localhost:8600/rest/student/details
, который обновит информацию о студенте в базе данных. Я должен отправить данные в формате JSON в сообщение метода.Как отправить объект JSON для отдыха webservice?
Ниже метод для создания этого сообщения JSon
private void createOrUpdateStudent(WebResource service) {
Gson gson = new Gson();
StudentImpl student= new StudentImpl();
student.setId(6);
student.setName("Godwin");
student.setSex("Male");
StudentView view = new StudentView(student);
System.out.println("::::::"+service.path("/rest/student").path("/details").type("application/json").post(ClientResponse.class, gson.toJson(view)));
}
studentView
, где класс, как показано ниже.
@XmlRootElement(name="clusterZipcode")
public class StudentView {
public Integer id;
public String name;
public String sex;
public StudentView() {}
public StudentView(StudentImpl student) {
this.id = student.getId();
this.name = student.getName();
this.sex = student.getSex();
}
при отправке, как и выше, я получаю сообщение об ошибке с Cause: com.mysql.jdbc.exceptions.jdbc4.MySQLIntegrityConstraintViolationException: Column 'Name' cannot be null
ли я передаю значение JSon правильно или, если есть альтернативный способ, чтобы отправить сообщение, пожалуйста, JSon предложить мне.
Можете ли вы показать, как выглядит ваш StudentView? –
Я обновил класс sandview. – user1900662
, вероятно, свойство name не будет установлено на сервере, где десериализует json обратно в объект. было бы трудно устранить неполадки, не увидев полную трассировку стека сервера. Вы не можете это понять? –