Получение ответа -> Неожиданный 'S' во время запроса POST - PullRequest
0 голосов
/ 23 апреля 2020

Я пытаюсь изучить успокаивающие сервисы, разработал пример страницы с запросами и ответами, но получаю - неожиданный ответ. Класс модели - Доктор

@Table("doctor")
public class Doctor implements Serializable {
 private static final long serialVersionUID= 1L;

 @PrimaryKey DoctorPrimaryKey key;
 private String name;
 private List<String> specialization;
 private float experience;
 private List<String> days;
 private String start;
 private String end;

 public Doctor(){}
 public Doctor(DoctorPrimaryKey primaryKey, String name, List<String> specialization, float experience,
         List<String> days, String start, String end) {
     super();
     this.key = primaryKey;
     this.name = name;
     this.specialization = specialization;
     this.experience = experience;
     this.days = days;
     this.start = start;
     this.end = end;
//getters and setters
 }

Класс DoctorPrimaryKey - для определения составного ключа в Cassandra

@PrimaryKeyClass
public class DoctorPrimaryKey implements Serializable{
    private static final long serialVersionUID = 1L;

    @PrimaryKeyColumn(name = "phone", type = PrimaryKeyType.PARTITIONED)
    private long phone;

    @PrimaryKeyColumn(name = "id" , type = PrimaryKeyType.PARTITIONED)
    private UUID id;


    public DoctorPrimaryKey() {}
     //getters and setters 

DoctorService Class

@Service
     public class DoctorService {

    Logger logger= LoggerFactory.getLogger(DoctorService.class);

    @Autowired
    private DoctorRepository doctorRepo;

    @Autowired
    private DoctorPrimaryKey pk;
public String addDoctor(Doctor doctor){
        Doctor returnVal=null;
        try {

            /* Generating Random Unique DoctorId */ 
        //  doctor.setId(UUID.randomUUID());
            pk.setId(UUID.randomUUID());
            returnVal = doctorRepo.save(doctor);    
        }

Класс контроллера - DoctorController

@RestController
@RequestMapping("/hms")
@CrossOrigin
public class DoctorController {

    @Autowired
    private DoctorService doctorService;
    @RequestMapping(method=RequestMethod.POST,value="/doctor", produces="application/json")
    public String addDoctor(@RequestBody Doctor doctor)
    {
        return doctorService.addDoctor(doctor);
    }  
}

Ниже показан запрос SAMPLE POST, который я передаю через POSTMAN

{
 "key": {
      "phone": 9895488523
        },

"name": "Chandni Mukherjee",
"specialization": [
 "MD-Gynaecology",
 "MBBS"
],
"experience": 20.0,
"days": [
 "MON",
 "TUE",
 "WED",
 "THU",
 "FRI"
],
"start": "10:30AM",
"end": "4:00PM"
}

ПРИМЕЧАНИЕ: Не передавать «id» в теле запроса, потому что он имеет тип UUID (генерируется случайным образом уникально). Кроме того, я определил секцию Header с ключом «Content-Type» и значение 'application / json' Пожалуйста, помогите мне пройти !!

...