2016-04-14 14 views
0

için örtülü Yazılarım veya Biçim uygulamak için deneyin, öncelikle fonksiyon bu dizi döndürürScala: Nesne için Json serializer bulunamadı. Bu tip I iki işlevi vardır

onun kimliği ve bunların kimlikleri dayalı ikinci döner birden fazla kullanıcı dayalı tek bir kullanıcı döndürür: User[id=1, name="name1", lastName= "lastname1"]

ikinci işlev dönüş bu: [User [id=1, name="name1", lastName= "lastname1"], User [id=2, name="name2", lastName= "lastname2"]]

Benim ilk scala fonksiyonu izleyin gibidir ve json iyi döndürülür ve ben hiçbir hata var:

Option(Try(id.toLong) match { 
    case Success(id) => User.getUserById(1) 
    }) match { 
     case Some(user) => Ok(Json.toJson(user)) 
     case None => NotFound 
    } 

Ama benim ikinci scala fonksiyonu (bkz benim başlık) hata verir:

Option(Try(id.toList) match { 
    case Success(id) => User.getUsersByIds(id) // id list is 1,2 
    }) match { 
     case Some(users) => Ok(Json.toJson(users)) 
     case None => NotFound 
    } 

Benim getUsersByIds fonksiyonu:

public static synchronized ArrayList<User> getUsersByIds(List usersIDs) { 


     String strSQL = "SELECT * FROM User WHERE ID IN" + usersIDs) ; 

     ArrayList<User> userList = getArrayList(strSQL); 

    return userList 
    } 

Nasıl tüm kullanıcılara ulaşmak için doğru json biçimini döndürebilir? Harita eklemem gerekiyor mu? Öyleyse nasıl ?

Eğer

+1

Sen getUsersByIds kodunu sonrası ortalama getUsersById – cchantep

+0

ait def ver çözer? – user708683

+0

En azından 'getUsersByIds' işlevinin dönüş türüne ihtiyacımız var. Ben yinelenen 'yinelenebilir [Kullanıcı] 'bazı alt sınıfı var. Öyleyse, bu Kullanıcı sınıfı bir vaka sınıfı mıdır? – irundaia

cevap

0

Varsayılan olarak, Scala koleksiyonu için sadece sahiptir serializers Çal teşekkür ederim. Bu çalışması gerekir: i buldum

import scala.collection.JavaConverters._ 

Json.toJson(users.asScala) 
+0

Merhaba n1r3 güncellendi, bir hata var: değer toSeq bir java.util.ArrayList üyesi değildir [Kullanıcı] – user708683

+0

Üzgünüm - cevabımı güncelledi. – n1r3