Вставьте данные в раздел CouchDB из java - PullRequest
1 голос
/ 24 апреля 2020

Я использую облачный API для CouchDB в JAVA. Я создал многораздельную базу данных из Java, но теперь я не знаю, как создать раздел и вставить в него свой json.

final String dbName = "cinema";
        CloudantClient client = ClientBuilder.url(new URL(url)).username(username).password(passw).build();
        System.out.println("Server version: " + client.serverVersion());
        Database db = CreatePartitioned.createPartitionedIfNotExists(client, dbName);
        db.createIndex("movies"); //doesn't work

У меня есть эта ошибка:

Exception in thread "main" com.cloudant.client.org.lightcouch.CouchDbException: 400 Bad Request at http://127.0.0.1:5984/movielens/_index. Error: bad_request. Reason: invalid UTF-8 JSON.
    at com.cloudant.client.org.lightcouch.CouchDbClient.execute(CouchDbClient.java:597)
    at com.cloudant.client.org.lightcouch.CouchDbClient.executeToInputStream(CouchDbClient.java:648)
    at com.cloudant.client.api.Database.createIndex(Database.java:391)
    at provaCouch.Prova_CouchDB.main(Prova_CouchDB.java:20)

Мне нужно создать 3 раздела, а на net плохая информация. Кто-нибудь знает, как решить эту проблему?

1 Ответ

2 голосов
/ 24 апреля 2020

Похоже, что вы не отправляете правильный аргумент createIndex().

См. строку документации для метода createIndex и API do c это ссылки. Возможно, вы захотите использовать вместо этого построитель индекса (com.cloudant.client.api.query.JsonIndex.Builder).

...