Когда я пытаюсь запустить следующую строкуобъективизации DatastoreNeedIndexException ошибка Заказать
List<MessageEntity> list =
ObjectifyService.ofy()
.load()
.type(MessageEntity.class)
.ancestor(Key.create(groupKey))
.order("dateSent")
.list();
Я получаю следующее сообщение об ошибке:
«com.google.appengine.api.datastore.DatastoreNeedIndexException: нет Соответствующий индекс найден. Рекомендуемый индекс: \ n- kind: MessageEntity \ n ancestor: yes \ n Свойства: \ n - name: dateSent \ n \ nНаложенный индекс для этого запроса: \ n \ n \ n \ n \ n "
Если я удаляю строку .order("dateSent")
, она отлично работает и приносит мне все соответствующие объекты в хранилище данных.
любая идея, что я могу делать неправильно?
вот мой Entity Класс
@Entity
public class MessageEntity implements EntityRoot {
@Parent
private Ref<GroupEntity> groupEntityRef;
@Id
private Long id;
private String message;
private String attachmentUrl;
private Ref<TenantUserEntity> sender;
@Index
private Long dateSent;
public MessageEntity(Ref<GroupEntity> groupEntityRef, String message, String attachmentUrl,
Ref<TenantUserEntity> sender, Long dateSent) {
this.groupEntityRef = groupEntityRef;
this.message = message;
this.attachmentUrl = attachmentUrl;
this.sender = sender;
this.dateSent = dateSent;
}
public String getMessage() {
return message;
}
public void setMessage(String message) {
this.message = message;
}
public String getAttachmentUrl() {
return attachmentUrl;
}
public void setAttachmentUrl(String attachmentUrl) {
this.attachmentUrl = attachmentUrl;
}
public Ref<TenantUserEntity> getSender() {
return sender;
}
public void setSender(Ref<TenantUserEntity> sender) {
this.sender = sender;
}
public Long getDateSent() {
return dateSent;
}
public void setDateSent(Long dateSent) {
this.dateSent = dateSent;
}
public Ref<GroupEntity> getGroupEntityRef() {
return groupEntityRef;
}
@EmptyConstructor
public MessageEntity() {
}
@Override
public Key<? extends EntityRoot> getKey() {
return Key.create(groupEntityRef.getKey(), MessageEntity.class, id);
}
}
P.S. Я добавил аннотацию @Index перед созданием сущностей, и при поиске этой ошибки я видел это как общую ошибку.