Dopo varie ricerche ed esperimenti la soluzioni si trova agganciando come id una classe in embed:
la collection risultante della mapReduce:
{
"_id" : {
"time" : "2011-03",
"url" : "www.test.it",
"fast" : "c80"
},
"value" : 12
}
la classe di modello di result:
@Entity(value = "Stats.CountSingleUrl", noClassnameStored = true)
public class MRResult {
@Id
@Embedded
@Indexed(value = IndexDirection.ASC, unique = true, dropDups = true)
private IdObject id;
private String value;
///... GETTER e SETTER
public static class IdObject {
private String time;
private String url;
private String fast;
///... GETTER e SETTER
}
}