FasterXML / FasterXML/jackson-module-scala

ClassCastException,bean include Long key of map in 2.7.2

Open
#241 2 comments 0 reactions 0 assignees View on GitHub
Dominant language
Scala
Stars
506
Forks
138
Avg merge
3h 6m
Merged PRs (30d)
48

Description

``` scala
import com.fasterxml.jackson.databind.ObjectMapper
import com.fasterxml.jackson.module.scala.DefaultScalaModule
import com.fasterxml.jackson.module.scala.experimental.ScalaObjectMapper

class XX {
@beans.BeanProperty
var b = Map[String, Long]("1" -> 11L, "2" -> 22)
}
object XX {
def main(args: Array[String]) {
val mapper = new ObjectMapper with ScalaObjectMapper
mapper.registerModule(DefaultScalaModule)
//
val x = new XX
val s = mapper.writeValueAsString(x)
println("s:" + s)
//
val mm = mapper.readValue[XX](s)
//
val rb = mm.b.get("1").get
println("get:" + rb)
println(rb == 11)
}
}
```

Exception in thread "main" java.lang.ClassCastException: java.lang.Integer cannot be cast to java.lang.Long
at scala.runtime.BoxesRunTime.unboxToLong(BoxesRunTime.java:105)
at XX$.main(XX.scala:26)
at XX.main(XX.scala)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
at java.lang.reflect.Method.invoke(Method.java:497)
at com.intellij.rt.execution.application.AppMain.main(AppMain.java:144)
s:{"b":{"1":11,"2":22}}

Contributor guide

No contributing guide indexed for this repository

Assessment

This issue has not been assessed yet.

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.