play-json-zipper icon indicating copy to clipboard operation
play-json-zipper copied to clipboard

Broken for Play >= 2.4

Open janlisse opened this issue 10 years ago • 10 comments

Hello,

i just tried to use your Zipper with Latest Play 2.4.1. It gives me:

 java.lang.NoSuchMethodError: play.api.libs.json.JsObject.<init>(Lscala/collection/Seq;)V
[info]   at play.api.libs.json.JsZipper$.mergeSiblingsAsObjLeft(JsZipper.scala:771)
[info]   at play.api.libs.json.JsZipper$.reify(JsZipper.scala:797)
[info]   at play.api.libs.json.JsZipper$class.up(JsZipper.scala:100)
[info]   at play.api.libs.json.JsZipper$$anon$1.up(JsZipper.scala:760)
[info]   at play.api.libs.json.JsZipper$class.root(JsZipper.scala:124)
[info]   at play.api.libs.json.JsZipper$$anon$1.root(JsZipper.scala:760)
[info]   at play.api.libs.json.JsZipper$class.createOrUpdatePath(JsZipper.scala:610)
[info]   at play.api.libs.json.JsZipper$$anon$2.createOrUpdatePath(JsZipper.scala:749)

My code:

val zipper = JsZipper(Json.parse("""{"foo":"bar"}""")
val withCat = zipper.createOrUpdatePath(__.\("categories"), {
      _ match {
        case arr: JsArray => arr :+ JsString("1")
        case _ => Json.arr("1")
   }
})

janlisse avatar Jun 30 '15 09:06 janlisse

+1

ScalaWilliam avatar Jul 02 '15 19:07 ScalaWilliam

+1

CodeCraftStudio avatar Sep 11 '15 09:09 CodeCraftStudio

Created pull request https://github.com/mandubian/play-json-zipper/pull/14

andrekampert avatar Oct 16 '15 12:10 andrekampert

Can you please merge the pull request, rebuild and publish it to the repository, I really need this working for Play 2.4. Thanks a million.

JakubKahovec avatar Nov 05 '15 15:11 JakubKahovec

+1

jgonian avatar Nov 17 '15 09:11 jgonian

I've made the fix for Play 2.4 available on BinTray. Feel free to use this version until the pull request gets merged into the main project.

To add the SBT dependency, you need to add our repository:

resolvers ++= Seq(
  "productfoundry at bintray" at "http://dl.bintray.com/productfoundry/maven"
)

Add the SBT dependency

libraryDependencies ++= Seq(
  "com.productfoundry" %% "play-json-zipper" % "1.3"
)

andrekampert avatar Nov 18 '15 09:11 andrekampert

Thank you

JakubKahovec avatar Nov 18 '15 09:11 JakubKahovec

+1

dgouyette avatar Dec 10 '15 16:12 dgouyette

+1

kamran-m avatar Dec 11 '15 10:12 kamran-m

+1

lielran avatar Dec 12 '15 07:12 lielran