Je suis nouveau à scala et je vois l'exception suivante:Type de Cast Carte [String, Object] pour Carte [String, String]
value mapValues is not a member of java.util.Map[String,Object]
[error] headers = Option(data).map(_.mapValues(_.toString)).getOrElse(Map()),
[error] ^
Voici l'extrait:
import scala.collection.JavaConverters._
def toMessage(properties: AMQP.BasicProperties, body: Array[Byte]): Message = {
Message (
headers = Option(data).map(_.mapValues(_.toString)).getOrElse(Map())) <<----- THIS LINE HAS PROBLEMS!!!
}
I sachez que le type de données de headers
est Map[String, String]
et celui de data
est Map<String, Object>
. Comment puis-je taper ceci pour résoudre le problème?
MISE À JOUR
a apporté les modifications suggérées par Alvaro et Tanjin. Maintenant, je reçois cette exception:
Maintenant je:
[error] found : Map[String,String] (in scala.collection)
[error] required: Map[String,String] (in scala.collection.immutable)
[error] headers = Option(properties.getHeaders).map(_.asScala.mapValues(_.toString)).getOrElse(Map())
[error] ^
'getOrElse (collection.immutable.Map())' – jwvh