upgrading java conversion to java convertors

Viewed 43

Can someone help me to fix this, I am trying to debug this method after upgrading from java conversion to java convertors. I am very new to scala.

def parse(table: String,json: String): Either[Map[String, _], Map[String, Object]] = {
    try {

      val parsedMap = jsonObjectMapper.readValue(json, classOf[MessageDetails])

      //Convert from class type to Map type
      val javaMap = jsonObjectMapper.convertValue(parsedMap,classOf[java.util.Map[String,Object]])

      val msgBodyContent = javaMap.get("MessageDetails").asInstanceOf[java.util.LinkedHashMap[String,Object]]

      // Move messageBody content to top level
      var outMap = javaMap
      if (msgBodyContent != null) {
        outMap = javaMap - "MessageDetails" ++ msgBodyContent
      }

      Right(outMap.toMap)

    } catch {
      case e: Exception =>
        logger.error("unable to parse JSON", e)
        Left(createErrorRec(json,"JSON_PARSE_ERROR",e.getMessage,table))
    }

  }

getting error

value - is not a member of java.util.Map[String,Object] & 
value toMap is not a member of java.util.Map[String,Object]
0 Answers
Related