Sto imparando scala e mongodb al momento e usando il gioco! quadro, quindi sto facendo tutti i tipi di errori mentre mi capita di capire le cose. Attualmente ho un oggetto scala che restituisce una lista di oggetti di database restituiti da una query di mongodb tramite casbah come segue;Come convertire la lista di casbah mongodb a json in 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
}
...}
Altrove nel mio codice desidero uscita l'elenco degli oggetti in JSON - così ho;
val currentAlerts = Alerts.list()
Quello che mi piacerebbe scrivere è qualcosa di simile;
val resultingJson = currentAlerts.toJson
Ma quando faccio questo, ho comprensibilmente il seguente errore;
value toJson is not a member of List[com.mongodb.casbah.Imports.DBObject]
La mia domanda è - qual è il modo giusto per convertire un elenco di com.mongodb.casbah.Imports.DBObject in JSON per l'uscita?
EDIT:
Per chiarezza, quello che voglio veramente fare è l'equivalente di
val listInJson = collection.find(query).sort(order).toJson
Nello stesso modo in cui posso scrivere
val listAsString = collection.find(query).sort(order).toString
Hai provato il 'Json.toJson() 'funzione? (http://www.playframework.org/documentation/2.0.2/ScalaJson) –
bene perché hai davvero bisogno di convertire i dati come json? E 'memorizzato come json in db (beh davvero bson), hai davvero bisogno della stessa schiena? Penso che si possa semplicemente voler copiare i dati in un oggetto in base alla struttura desiderata e quindi serializzarli in json ... – aishwarya
Ho bisogno di emetterlo come JSON per un webservice da consumare. – Roger