Как запрашивать документы Cloudant для определенного поля

Я новичок в Cloudant, и мне нужно сделать простой запрос к определенному полю документа. Мои документы имеют следующую структуру, и мне нужно получить только документы со статусом = ПОДПИСАН

{
  "_id": "3ddb4058f3b24a7a9c585f997e30ff78",
  "_rev": "3-757c82c48f4e7c333911be6859aff74e",
  "fileName": "Generali Architects",
  "status": "SIGNED",
  "user": "italy",
  "_attachments": {
    "Generali Architects": {
      "content_type": "application/pdf",
      "revpos": 3,
      "digest": "md5-9hqSif7CzQ2yvKxSSbj+dw==",
      "length": 323653,
      "stub": true
    }
  }
}

Читая документацию Cloudant, я создал следующий проектный документ со связанным представлением, которое возвращает именно то, что я ожидал: Cloudant View

Затем из моего приложения Java я использую следующий код

        String cloudantView = "_design/signedDocs/status-signed-iew";
     List<SignDocDocument> docs =  

db.view(cloudantView).includeDocs(true).query(SignDocDocument.class);

который всегда возвращает мне "org.lightcouch.NoDocumentException: объект не найден"

Любая идея, какую ошибку я делаю здесь?

Большое тебе спасибо


person Roberto Pozzi    schedule 13.05.2015    source источник


Ответы (1)


Это опечатка в "_design/signedDocs/status-signed-iew"; например. это должно быть "_design/signedDocs/status-signed-view"; (в зависимости от того, как работает ваша библиотека Java...).

Всегда стоит проверить представление путем прямого доступа в вашем браузере, просто чтобы убедиться, что оно возвращает ожидаемые данные.

person SimonM    schedule 13.05.2015
comment
да, конечно, это была просто опечатка ... я проверил несколько путей, но, похоже, я действительно что-то здесь упускаю ... - person Roberto Pozzi; 13.05.2015