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

Respuestas a la pregunta(1)

Su respuesta a la pregunta