2012-08-02 33 views
4

了Riak支持存储对象时自动生成键:自动通过Java客户端生成了Riak关键

http://wiki.basho.com/Basic-Riak-API-Operations.html

存储一个新的对象,并指定随机密钥#

如果您应用程序宁愿将密钥生成留给Riak,发出一个POST请求到 桶URL而不是PUT到桶/密钥对:POST /riak/bucket如果您不通过Riak a桶后键”的名称,它 会知道为您创建一个。

是有可能做同样的使用Java客户端时? 似乎在存储对象时必须提供密钥。

+0

我已经更新了下面的答案。现在支持。 – 2012-09-27 18:51:19

回答

3

编辑更新:这是现在可以在Java客户端。它在1.0.7客户端版本中添加。请参阅:https://github.com/basho/riak-java-client/pull/168


不幸的是...现在的Java客户端不支持此。

有人开设了一个问题,为此:https://github.com/basho/riak-java-client/issues/141

我同意它需要添加。我们目前正在为Riak 1.2版本开发一些优先级稍高的工具,但我希望能够在不久的将来添加它并加以解决。

+0

嘿@Brian我看到你做了这个更新,但我仍然有问题得到这个工作。 Bucket bucket = this.myClient.fetchBucket(bucketName).execute(); bucket.store(POJO).withoutFetch()。execute();正在抛出riak.client.convert.NoKeySpecifedException:null – KRB 2013-06-13 17:08:58

+0

只需注意一点,上面的例子就是使用PB Client。 – KRB 2013-06-13 17:40:17

+0

@KRB - 我猜我错过了在JSON转换器。我会在其上打开一个问题并修复它;对于那个很抱歉。 – 2013-06-13 21:51:32