3

我想做的就是做一个 upsert 操作。我有一个 JsonDocument,我有一个 Couchbase 服务器“123.456.789.1011”和一个名为“testbucket”的存储桶。现在,当我使用端口 8091 的 IP 地址打开服务器时,它会要求我输入用户名和密码,说“uname”、“pwd”,输入后它会打开。我的存储桶没有任何密码。

cluster = CouchbaseCluster.create("123.456.789.101");
    cluster.clusterManager("testuser","testuser123");
    bucket = cluster.openBucket("testbucket");

    jsonObject = JsonObject.create()
            .put("Order",map);

    jsonDocument = JsonDocument.create("Hello",jsonObject);
    jsonDocumentResponse = bucket.upsert(jsonDocument);

这是我的代码,但问题总是在运行代码时出现错误提示

 ERROR spark.webserver.MatcherFilter - 

com.couchbase.client.java.error.InvalidPasswordException:存储桶“testbucket”的密码不匹配。在 com.couchbase.client.java.CouchbaseAsyncCluster$1.call(CouchbaseAsyncCluster.java:156) 在 com.couchbase.client.java.CouchbaseAsyncCluster$1.call(CouchbaseAsyncCluster.java:146) 在 rx.internal.operators.OperatorOnErrorResumeNextViaFunction$1。 onError(OperatorOnErrorResumeNextViaFunction.java:77) 在 rx.internal.operators.OperatorMap$1.onError(OperatorMap.java:49) 在 rx.internal.operators.NotificationLite.accept(NotificationLite.java:147) 在 rx.internal.operators。 OperatorObserveOn$ObserveOnSubscriber.pollQueue(OperatorObserveOn.java:177) 在 rx.internal.operators.OperatorObserveOn$ObserveOnSubscriber.access$000(OperatorObserveOn.java:65) 在 rx.internal.operators.OperatorObserveOn$ObserveOnSubscriber$2。

我是 Couchbase 的新手,我真的不知道该怎么做。我用谷歌搜索了它,但网络上什么都没有。甚至他们的文档也没有给我任何建议。我希望 StackOverflow 上的某个人一定会为我解答。谢谢。

4

2 回答 2

0

看来您需要在 openBucket 方法中传递存储桶密码(与集群密码不同):http: //docs.couchbase.com/sdk-api/couchbase-java-client-2.0.0/com/ couchbase/client/java/Cluster.html#openBucket%28java.lang.String,%20java.lang.String%29

于 2016-02-25T09:27:10.280 回答
0

您似乎正在尝试使用集群凭据连接存储桶。尝试使用存储桶用户名和空密码连接到存储桶:

cluster = CouchbaseCluster.create("123.456.789.101");
bucket = cluster.openBucket("testbucket", "");
于 2016-06-28T14:36:07.360 回答