¡Estoy aprendiendo scala y mongodb en este momento y usando la obra! marco, así que estoy cometiendo todo tipo de errores a medida que entiendo las cosas. Actualmente tengo un objeto scala que devuelve una lista de objetos de base de datos devueltos de una consulta de mongodb a través de casbah de la siguiente manera;Cómo convertir la lista de casbah mongodb a json en scala/play
object Alerts {
def list() : List[DBObject]= {
val collection = MongoDatabase.collection;
val query = MongoDBObject.empty
val order = MongoDBObject("Issue Time:" -> -1)
val list = collection.find(query).sort(order).toList
list
}
... }
En otra parte de mi código que desee enviar la lista de objetos JSON - por lo que tengo;
val currentAlerts = Alerts.list()
Lo que me gustaría escribir es algo así como;
val resultingJson = currentAlerts.toJson
Pero cuando hago esto, comprensiblemente recibo el siguiente error;
value toJson is not a member of List[com.mongodb.casbah.Imports.DBObject]
Mi pregunta es - ¿cuál es la forma correcta de convertir una lista de com.mongodb.casbah.Imports.DBObject en JSON para la producción?
EDIT:
Para mayor claridad, lo que realmente quiero hacer es el equivalente de
val listInJson = collection.find(query).sort(order).toJson
De la misma manera que yo pueda escribir
val listAsString = collection.find(query).sort(order).toString
Quizás quiso probar el 'Json.toJson() 'función? (http://www.playframework.org/documentation/2.0.2/ScalaJson) –
¿por qué realmente necesita convertir los datos como json? Se almacena como json en db (realmente bson en realidad), ¿realmente necesitas lo mismo? Creo que es posible que desee copiar datos en un objeto en función de la estructura que desee y luego serializarlos en json ... – aishwarya
Necesito mostrarlo como JSON para que lo consuma un servicio web. – Roger