Отображение документа в объект Java, начинающийся с «is» - PullRequest
0 голосов
/ 02 июля 2019

Я пытаюсь сопоставить документ Firebase с POJO, используя toObject (myObject.class), как он отображается на https://firebase.google.com/docs/firestore/query-data/get-data (в разделе «Пользовательский объект»).

Все работаетхорошо, за исключением одного: у меня есть логическое значение в БД с именем isCancelled, но когда я сопоставляю документ с объектом, я получаю следующее сообщение:

## WARN 20180 -- [nio-8081-exec-4] cgcloud.firestore.CustomClassMapper: не найден установщик / поле для isCancelled в классе main.modals.ServiceRequest ##.

Я попытался изменить имя переменной вмой POJO на «отменено» и изменение сеттеров на «setIsCancelled» (автоматическое создание сеттеров создало «setCancelled» без «is»).

** полный SreviceRequest POJO:

package main.modals;

import java.util.Date;

public class ServiceRequest {
private boolean fallDetected;
private boolean isCancelled;
private Date requestStartTime;
private String requestType;
private String requestedByPatientID;
private String status;
private Date updatedAt;

public ServiceRequest() {
    super();
}

public boolean isFallDetected() {
    return fallDetected;
}

public boolean isCancelled() {
    return isCancelled;
}

public Date getRequestStartTime() {
    return requestStartTime;
}

public String getRequestType() {
    return requestType;
}

public String getRequestedByPatientID() {
    return requestedByPatientID;
}

public String getStatus() {
    return status;
}

public Date getUpdatedAt() {
    return updatedAt;
}

public void setFallDetected(boolean fallDetected) {
    this.fallDetected = fallDetected;
}

public void setCancelled(boolean isCancelled) {
    this.isCancelled = isCancelled;
}

public void setRequestStartTime(Date requestStartTime) {
    this.requestStartTime = requestStartTime;
}

public void setRequestType(String requestType) {
    this.requestType = requestType;
}

public void setRequestedByPatientID(String requestedByPatientID) {
    this.requestedByPatientID = requestedByPatientID;
}

public void setStatus(String status) {
    this.status = status;
}

public void setUpdatedAt(Date updatedAt) {
    this.updatedAt = updatedAt;
}

}

1 Ответ

0 голосов
/ 02 июля 2019

Исправьте это благодаря комментарию Андреаса: для не булевых свойств имена методов должны быть getXxx и setXxx, например, для имени свойства методы должны быть getName и setName.Для логических значений методы должны быть isXxx и setXxx, например, для свойства done методы будут isDone и setDone.--- Методы для свойства isCancelled будут isIsCancelled и setIsCancelled.Спасибо!

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...