2016-02-17 4 views
0

Я использую mongoDB и сопоставляю его ответ на класс case в scala Я получаю исключение из can not convert Integer to String. так как я могу сделать свой класс case Независимо от типа данных в базе данных, я пытаюсь использовать тип данных «Любой», тогда он показывает мне ошибку при преобразовании в json.mongo db to case ccersion error

+0

Возможно ли предоставить ваш собственный считыватель JSON. –

+1

Какой драйвер MongoDB? – cchantep

+0

Вам необходимо предоставить фрагмент кода. – expert

ответ

0

Трудно сказать, что не так с вашим кодом, без какого-либо примера, но вот рабочий пример. Возможно, вы найдете то, что вам нужно:

import akka.http.scaladsl.model.DateTime 
import reactivemongo.bson.{ BSONDocument, BSONDocumentReader, BSONDocumentWriter, BSONObjectID } 

case class Role(id: BSONObjectID = BSONObjectID.generate, 
      name: String, 
      statusOrder: Int) 

object Role { 

implicit object RoleBSONReader extends BSONDocumentReader[ Role ] { 

def read(doc: BSONDocument): Role = 
    Role(
    id = doc.getAs[ BSONObjectID ]("_id").get, 
    name = doc.getAs[ String ]("name").get, 
    statusOrder = doc.getAs[ Int ]("status_order").get 
) 
} 

implicit object RoleBSONWriter extends BSONDocumentWriter[ Role ] { 
    def write(role: Role): BSONDocument = 
     BSONDocument(
     "_id" -> role.id, 
     "name" -> role.name, 
     "status_order" -> role.statusOrder 
    ) 
    } 

} 

 Смежные вопросы

  • Нет связанных вопросов^_^