Play框架模型中的数组[Byte]

时间:2011-02-05 12:00:23

标签: scala playframework

我想问你一个关于字节数组是play框架模型一部分的问题。我的模型定义如下:

@Entity
class BTFile (
  @Required
  var hash : Array[Byte],

  @Required
  var size : Int

) extends Model {

  @OneToMany(mappedBy="file",cascade=Array(CascadeType.ALL))
  var peers:JList[BTPeer] = new ArrayList[BTPeer]
}

将DAO对象定义为

object BTFiles extends QueryOn[BTFile]

但每次我尝试使用BTFiles.find(“byHash”)时,都会抛出以下异常:

[B cannot be cast to [Ljava.lang.Object;

有谁知道如何解决这个问题?我试图谷歌,但我找不到解决方案。单元测试我测试它:

 it should "create and retrieve BTFile" in {
   val file = new BTFile("some_hash".getBytes,1).save

   BTFiles.find("byHash","some_hash".getBytes)

 }

任何帮助将不胜感激!

1 个答案:

答案 0 :(得分:1)

我建议您尝试使用java.lang.Byte,因为Array未被删除类型,因此,Array[Byte]无法投放到Array[Object]