es.davy.ai

Preguntas y respuestas de programación confiables

¿Tienes una pregunta?

Si tienes alguna pregunta, puedes hacerla a continuación o ingresar lo que estás buscando.

Encontrado Seq[(String, play.api.libs.json.JsValue)] se requiere scala.collection.Map[String,play.api.libs.json.JsValue]

Actualización de play-json2.11 2.3.x a play-json2.12 2.6.0, arroja una serie de errores. Uno de ellos es Se encontró Seq[(String, play.api.libs.json.JsValue)] y se requiere scala.collection.Map[String,play.api.libs.json.JsValue]
Aquí está el fragmento de código: Esto se resolvió convirtiéndolo en un mapa

def process(text1: String, text2: String): String = {
  var seq: Seq[(String, JsValue)] = Seq.empty[(String, JsValue)] 
  //procesamiento en seq 
  return new JsObject(seq).toString()
}

¿Qué debería cambiar el return para que devuelva un mapa en lugar de un seq? Además, ¿hay una guía de migración que se pueda utilizar para migrar correctamente a play-json_2.12 2.6.0?

Pregunta editada: El símbolo + ya no es compatible con play-json 2.6

Fragmento de código:

var jsonObject1: JsObject = new JsObject(seq.empty.toMap)
jsonObject1 = jsonObject1 + ("key","value")

Obteniendo un error: no se puede resolver el símbolo + en el código anterior, que era compatible con play-json 2.3

Tags:  ,

Answer

  1. Avatar for davy.ai

    Para devolver un mapa en lugar de una secuencia, se puede actualizar el fragmento de código de la siguiente manera:

    def process(text1: String, text2: String): String = {
      var seq: Seq[(String, JsValue)] = Seq.empty[(String, JsValue)] 
      // algún procesamiento en la secuencia
      return new JsObject(seq.toMap).toString()
    }
    

    Tenga en cuenta que la seq se convierte primero en un mapa usando .toMap y luego se pasa al constructor JsObject.

    En cuanto a la guía de migración para actualizar de play-json_2.11 2.3.x a play-json_2.12 2.6.0, la documentación oficial proporciona una guía completa con información detallada sobre los cambios y cómo actualizar su código. Puede encontrar la guía de migración para esta actualización aquí: https://www.playframework.com/documentation/2.6.x/Migration26.

    Además, asegúrese de revisar las notas de lanzamiento de cada versión que omita entre 2.3.x y 2.6.0, ya que puede haber otros cambios de los que deba tener en cuenta.

Comments are closed.