Obtención de los resultados de MapReduce en RIAK (utilizando el cliente Java)
Estoy almacenando Person POJOs (4 campos de cadena - id, nombre, lastUpdate, Data) en RIAK, y luego intento recuperar estos objetos con MapReduce.
Lo estoy haciendo muy similar a la documentación de Basho:
BucketMapReduce m = riakClient.mapReduce("person");
m.addMapPhase(new NamedJSFunction("Riak.mapByFields"), true);
MapReduceResult result = m.execute();
Collection<Person> tmp = result.getResult(Person.class);
se invoca el constructor String de la persona:
public Person(String str){}
(Debo tener este constructor; de lo contrario, obtendré una excepción porque falta). Allí obtengo el objeto como una Cadena: los campos del Objeto en una cadena con un delimitador extraño.
¿Por qué no estoy convirtiendo el objeto automáticamente en mi POJO? ¿Realmente necesito pasar la cadena y deserializarla? estoy haciendo algo mal? s