Play-Java-Seed fails starting. Full stack log included.

461 views
Skip to first unread message

Hugo Play

unread,
Nov 5, 2017, 6:39:40 AM11/5/17
to Play Framework

Hi guys!

I've downloaded play-java-seed from the Download page, unzipped, and sbt run on it. 
Seems to compile but as soon as it is run, an uncaught error happens:
Uncaught error from thread [play-dev-mode-akka.actor.default-dispatcher-7]: javax/xml/bind/DatatypeConverter, shutting down JVM since 'akka.jvm-exit-on-fatal-error' is enabled for for ActorSystem[play-dev-mode]

Seems it is not my day with Play today. 

Full console and stack log.
********************************************************
E:\Play\play-java-seed>sbt run

E:\Play\play-java-seed>.\sbt-dist\bin\sbt.bat run
Java HotSpot(TM) 64-Bit Server VM warning: Ignoring option MaxPermSize; support was removed in 8.0
[info] Loading settings from plugins.sbt,scaffold.sbt ...
[info] Loading project definition from E:\Play\play-java-seed\project
[info] Updating {file:/E:/Play/play-java-seed/project/}play-java-seed-build...
WARNING: An illegal reflective access operation has occurred
WARNING: Illegal reflective access by sbt.internal.librarymanagement.ivyint.ErrorMessageAuthenticator$ (file:/C:/Users/victo/.sbt/boot/scala-2.12.3/org.scala-sbt/sbt/1.0.2/librarymanagement-ivy_2.12-1.0.2.jar) to field java.net.Authenticator.theAuthenticator
WARNING: Please consider reporting this to the maintainers of sbt.internal.librarymanagement.ivyint.ErrorMessageAuthenticator$
WARNING: Use --illegal-access=warn to enable warnings of further illegal reflective access operations
WARNING: All illegal access operations will be denied in a future release
[info]  [SUCCESSFUL ] org.javassist#javassist;3.18.1-GA!javassist.jar(bundle) (8563ms)
[info] Done updating.
[warn] Found version conflict(s) in library dependencies; some are suspected to be binary incompatible:
[warn]  * org.webjars:webjars-locator-core:0.33 is selected over 0.32
[warn]      +- com.typesafe:npm_2.12:1.2.1                        (depends on 0.32)
[warn]      +- com.typesafe.sbt:sbt-web:1.4.3 (scalaVersion=2.12, sbtVersion=1.0) (depends on 0.32)
[warn]  * org.codehaus.plexus:plexus-utils:3.0.17 is selected over {2.1, 1.5.5}
[warn]      +- org.apache.maven:maven-settings:3.2.2              (depends on 3.0.17)
[warn]      +- org.apache.maven:maven-repository-metadata:3.2.2   (depends on 3.0.17)
[warn]      +- org.apache.maven:maven-aether-provider:3.2.2       (depends on 3.0.17)
[warn]      +- org.apache.maven:maven-model:3.2.2                 (depends on 3.0.17)
[warn]      +- org.apache.maven:maven-core:3.2.2                  (depends on 3.0.17)
[warn]      +- org.apache.maven:maven-artifact:3.2.2              (depends on 3.0.17)
[warn]      +- org.apache.maven:maven-settings-builder:3.2.2      (depends on 3.0.17)
[warn]      +- org.apache.maven:maven-model-builder:3.2.2         (depends on 3.0.17)
[warn]      +- org.sonatype.plexus:plexus-sec-dispatcher:1.3      (depends on 1.5.5)
[warn]      +- org.eclipse.sisu:org.eclipse.sisu.plexus:0.0.0.M5  (depends on 2.1)
[warn]  * com.google.guava:guava:23.0 is selected over {10.0.1, 16.0, 20.0}
[warn]      +- io.methvin:directory-watcher:0.2.2                 (depends on 23.0)
[warn]      +- com.fasterxml.jackson.datatype:jackson-datatype-guava:2.8.8 (depends on 10.0.1)
[warn]      +- org.eclipse.sisu:org.eclipse.sisu.plexus:0.0.0.M5  (depends on 10.0.1)
[warn]      +- com.spotify:docker-client:8.9.0                    (depends on 10.0.1)
[warn] Run 'evicted' to see detailed eviction warnings
[info] Loading settings from build.sbt ...
[info] Set current project to play-java-seed (in build file:/E:/Play/play-java-seed/)
[info] Updating {file:/E:/Play/play-java-seed/}root...
[info] Done updating.
[warn] Found version conflict(s) in library dependencies; some are suspected to be binary incompatible:
[warn]  * com.google.guava:guava:22.0 is selected over {19.0, 20.0}
[warn]      +- com.typesafe.play:play_2.12:2.6.7                  (depends on 22.0)
[warn]      +- org.reflections:reflections:0.9.11                 (depends on 20.0)
[warn]      +- com.google.inject:guice:4.1.0                      (depends on 19.0)
[warn]  * com.typesafe.akka:akka-stream_2.12:2.5.6 is selected over 2.4.19
[warn]      +- com.typesafe.play:play-streams_2.12:2.6.7          (depends on 2.5.6)
[warn]      +- com.typesafe.akka:akka-http-core_2.12:10.0.10      (depends on 2.4.19)
[warn]  * com.typesafe.akka:akka-actor_2.12:2.5.6 is selected over 2.4.19
[warn]      +- com.typesafe.akka:akka-stream_2.12:2.5.6 ()        (depends on 2.5.6)
[warn]      +- com.typesafe.play:play_2.12:2.6.7                  (depends on 2.5.6)
[warn]      +- com.typesafe.akka:akka-slf4j_2.12:2.5.6 ()         (depends on 2.5.6)
[warn]      +- com.typesafe.akka:akka-parsing_2.12:10.0.10        (depends on 2.4.19)
[warn] Run 'evicted' to see detailed eviction warnings

--- (Running the application, auto-reloading is enabled) ---

[info] p.c.s.AkkaHttpServer - Listening for HTTP on /0:0:0:0:0:0:0:0:9000

(Server started, use Enter to stop and go back to the console...)

[info] Compiling 6 Scala sources and 2 Java sources to E:\Play\play-java-seed\target\scala-2.12\classes ...
[info] Done compiling.
[info] p.a.h.EnabledFilters - Enabled Filters (see <https://www.playframework.com/documentation/latest/Filters>):

    play.filters.csrf.CSRFFilter
    play.filters.headers.SecurityHeadersFilter
    play.filters.hosts.AllowedHostsFilter

[info] play.api.Play - Application started (Dev)
Uncaught error from thread [play-dev-mode-akka.actor.default-dispatcher-7]: javax/xml/bind/DatatypeConverter, shutting down JVM since 'akka.jvm-exit-on-fatal-error' is enabled for for ActorSystem[play-dev-mode]
java.lang.NoClassDefFoundError: javax/xml/bind/DatatypeConverter
        at io.jsonwebtoken.impl.Base64Codec.decode(Base64Codec.java:26)
        at io.jsonwebtoken.impl.DefaultJwtBuilder.signWith(DefaultJwtBuilder.java:106)
        at play.api.mvc.JWTCookieDataCodec$JWTFormatter.format(Cookie.scala:718)
        at play.api.mvc.JWTCookieDataCodec.encode(Cookie.scala:577)
        at play.api.mvc.JWTCookieDataCodec.encode$(Cookie.scala:575)
        at play.api.mvc.DefaultJWTCookieDataCodec.encode(Cookie.scala:768)
        at play.api.mvc.FallbackCookieDataCodec.encode(Cookie.scala:742)
        at play.api.mvc.FallbackCookieDataCodec.encode$(Cookie.scala:741)
        at play.api.mvc.DefaultSessionCookieBaker.encode(Session.scala:95)
        at play.api.mvc.CookieBaker.encodeAsCookie(Cookie.scala:414)
        at play.api.mvc.CookieBaker.encodeAsCookie$(Cookie.scala:413)
        at play.api.mvc.DefaultSessionCookieBaker.encodeAsCookie(Session.scala:95)
        at play.api.mvc.Result.$anonfun$bakeCookies$2(Results.scala:297)
        at scala.Option.map(Option.scala:146)
        at play.api.mvc.Result.bakeCookies(Results.scala:296)
        at play.core.server.common.ServerResultUtils.prepareCookies(ServerResultUtils.scala:227)
        at play.core.server.AkkaHttpServer.$anonfun$executeAction$3(AkkaHttpServer.scala:302)
        at akka.http.scaladsl.util.FastFuture$.strictTransform$1(FastFuture.scala:41)
        at akka.http.scaladsl.util.FastFuture$.transformWith$extension1(FastFuture.scala:55)
        at akka.http.scaladsl.util.FastFuture$.flatMap$extension(FastFuture.scala:26)
        at play.core.server.AkkaHttpServer.executeAction(AkkaHttpServer.scala:301)
        at play.core.server.AkkaHttpServer.executeHandler(AkkaHttpServer.scala:254)
        at play.core.server.AkkaHttpServer.handleRequest(AkkaHttpServer.scala:200)
        at play.core.server.AkkaHttpServer.$anonfun$createServerBinding$3(AkkaHttpServer.scala:106)
        at akka.stream.impl.fusing.MapAsync$$anon$23.onPush(Ops.scala:1172)
        at akka.stream.impl.fusing.GraphInterpreter.processPush(GraphInterpreter.scala:499)
        at akka.stream.impl.fusing.GraphInterpreter.processEvent(GraphInterpreter.scala:462)
        at akka.stream.impl.fusing.GraphInterpreter.execute(GraphInterpreter.scala:368)
        at akka.stream.impl.fusing.GraphInterpreterShell.runBatch(ActorGraphInterpreter.scala:571)
        at akka.stream.impl.fusing.GraphInterpreterShell$AsyncInput.execute(ActorGraphInterpreter.scala:457)
        at akka.stream.impl.fusing.GraphInterpreterShell.processEvent(ActorGraphInterpreter.scala:546)
        at akka.stream.impl.fusing.ActorGraphInterpreter.akka$stream$impl$fusing$ActorGraphInterpreter$$processEvent(ActorGraphInterpreter.scala:728)
        at akka.stream.impl.fusing.ActorGraphInterpreter$$anonfun$receive$1.applyOrElse(ActorGraphInterpreter.scala:743)
        at akka.actor.Actor.aroundReceive(Actor.scala:517)
        at akka.actor.Actor.aroundReceive$(Actor.scala:515)
        at akka.stream.impl.fusing.ActorGraphInterpreter.aroundReceive(ActorGraphInterpreter.scala:653)
        at akka.actor.ActorCell.receiveMessage(ActorCell.scala:527)
        at akka.actor.ActorCell.invoke(ActorCell.scala:496)
        at akka.dispatch.Mailbox.processMailbox(Mailbox.scala:257)
        at akka.dispatch.Mailbox.run(Mailbox.scala:224)
        at akka.dispatch.Mailbox.exec(Mailbox.scala:234)
        at akka.dispatch.forkjoin.ForkJoinTask.doExec(ForkJoinTask.java:260)
        at akka.dispatch.forkjoin.ForkJoinPool$WorkQueue.runTask(ForkJoinPool.java:1339)
        at akka.dispatch.forkjoin.ForkJoinPool.runWorker(ForkJoinPool.java:1979)
        at akka.dispatch.forkjoin.ForkJoinWorkerThread.run(ForkJoinWorkerThread.java:107)
Caused by: java.lang.ClassNotFoundException: javax.xml.bind.DatatypeConverter
        at java.base/java.net.URLClassLoader.findClass(URLClassLoader.java:466)
        at java.base/java.lang.ClassLoader.loadClass(ClassLoader.java:563)
        at java.base/java.lang.ClassLoader.loadClass(ClassLoader.java:496)
        ... 45 more
[ERROR] [SECURITY][11/05/2017 11:25:14.115] [play-dev-mode-akka.actor.default-dispatcher-7] [akka.actor.ActorSystemImpl(play-dev-mode)] Uncaught error from thread [play-dev-mode-akka.actor.default-dispatcher-7]: javax/xml/bind/DatatypeConverter, shutting down JVM since 'akka.jvm-exit-on-fatal-error' is enabled for ActorSystem[play-dev-mode]
java.lang.NoClassDefFoundError: javax/xml/bind/DatatypeConverter
        at io.jsonwebtoken.impl.Base64Codec.decode(Base64Codec.java:26)
        at io.jsonwebtoken.impl.DefaultJwtBuilder.signWith(DefaultJwtBuilder.java:106)
        at play.api.mvc.JWTCookieDataCodec$JWTFormatter.format(Cookie.scala:718)
        at play.api.mvc.JWTCookieDataCodec.encode(Cookie.scala:577)
        at play.api.mvc.JWTCookieDataCodec.encode$(Cookie.scala:575)
        at play.api.mvc.DefaultJWTCookieDataCodec.encode(Cookie.scala:768)
        at play.api.mvc.FallbackCookieDataCodec.encode(Cookie.scala:742)
        at play.api.mvc.FallbackCookieDataCodec.encode$(Cookie.scala:741)
        at play.api.mvc.DefaultSessionCookieBaker.encode(Session.scala:95)
        at play.api.mvc.CookieBaker.encodeAsCookie(Cookie.scala:414)
        at play.api.mvc.CookieBaker.encodeAsCookie$(Cookie.scala:413)
        at play.api.mvc.DefaultSessionCookieBaker.encodeAsCookie(Session.scala:95)
        at play.api.mvc.Result.$anonfun$bakeCookies$2(Results.scala:297)
        at scala.Option.map(Option.scala:146)
        at play.api.mvc.Result.bakeCookies(Results.scala:296)
        at play.core.server.common.ServerResultUtils.prepareCookies(ServerResultUtils.scala:227)
        at play.core.server.AkkaHttpServer.$anonfun$executeAction$3(AkkaHttpServer.scala:302)
        at akka.http.scaladsl.util.FastFuture$.strictTransform$1(FastFuture.scala:41)
        at akka.http.scaladsl.util.FastFuture$.transformWith$extension1(FastFuture.scala:55)
        at akka.http.scaladsl.util.FastFuture$.flatMap$extension(FastFuture.scala:26)
        at play.core.server.AkkaHttpServer.executeAction(AkkaHttpServer.scala:301)
        at play.core.server.AkkaHttpServer.executeHandler(AkkaHttpServer.scala:254)
        at play.core.server.AkkaHttpServer.handleRequest(AkkaHttpServer.scala:200)
        at play.core.server.AkkaHttpServer.$anonfun$createServerBinding$3(AkkaHttpServer.scala:106)
        at akka.stream.impl.fusing.MapAsync$$anon$23.onPush(Ops.scala:1172)
        at akka.stream.impl.fusing.GraphInterpreter.processPush(GraphInterpreter.scala:499)
        at akka.stream.impl.fusing.GraphInterpreter.processEvent(GraphInterpreter.scala:462)
        at akka.stream.impl.fusing.GraphInterpreter.execute(GraphInterpreter.scala:368)
        at akka.stream.impl.fusing.GraphInterpreterShell.runBatch(ActorGraphInterpreter.scala:571)
        at akka.stream.impl.fusing.GraphInterpreterShell$AsyncInput.execute(ActorGraphInterpreter.scala:457)
        at akka.stream.impl.fusing.GraphInterpreterShell.processEvent(ActorGraphInterpreter.scala:546)
        at akka.stream.impl.fusing.ActorGraphInterpreter.akka$stream$impl$fusing$ActorGraphInterpreter$$processEvent(ActorGraphInterpreter.scala:728)
        at akka.stream.impl.fusing.ActorGraphInterpreter$$anonfun$receive$1.applyOrElse(ActorGraphInterpreter.scala:743)
        at akka.actor.Actor.aroundReceive(Actor.scala:517)
        at akka.actor.Actor.aroundReceive$(Actor.scala:515)
        at akka.stream.impl.fusing.ActorGraphInterpreter.aroundReceive(ActorGraphInterpreter.scala:653)
        at akka.actor.ActorCell.receiveMessage(ActorCell.scala:527)
        at akka.actor.ActorCell.invoke(ActorCell.scala:496)
        at akka.dispatch.Mailbox.processMailbox(Mailbox.scala:257)
        at akka.dispatch.Mailbox.run(Mailbox.scala:224)
        at akka.dispatch.Mailbox.exec(Mailbox.scala:234)
        at akka.dispatch.forkjoin.ForkJoinTask.doExec(ForkJoinTask.java:260)
        at akka.dispatch.forkjoin.ForkJoinPool$WorkQueue.runTask(ForkJoinPool.java:1339)
        at akka.dispatch.forkjoin.ForkJoinPool.runWorker(ForkJoinPool.java:1979)
        at akka.dispatch.forkjoin.ForkJoinWorkerThread.run(ForkJoinWorkerThread.java:107)
Caused by: java.lang.ClassNotFoundException: javax.xml.bind.DatatypeConverter
        at java.base/java.net.URLClassLoader.findClass(URLClassLoader.java:466)
        at java.base/java.lang.ClassLoader.loadClass(ClassLoader.java:563)
        at java.base/java.lang.ClassLoader.loadClass(ClassLoader.java:496)
        ... 45 more

[INFO] [11/05/2017 11:25:14.115] [Thread-1] [CoordinatedShutdown(akka://sbt-web)] Starting coordinated shutdown from JVM shutdown hook

E:\Play\play-java-seed>

Greg Methvin

unread,
Nov 5, 2017, 7:10:44 AM11/5/17
to play-framework
Hi Hugo,

If you google for the NoClassDefFound error you'll see it's because those JAXB APIs were moved to a separate module in Java 9: https://stackoverflow.com/questions/43574426/how-to-resolve-java-lang-noclassdeffounderror-javax-xml-bind-jaxbexception-in-j

So the solution is to add "--add-modules java.xml.bind" in your JAVA_OPTIONS. This other mailing list post explains it as well: https://groups.google.com/forum/#!topic/play-framework/e3KLg94j5_M

Greg

--
You received this message because you are subscribed to the Google Groups "Play Framework" group.
To unsubscribe from this group and stop receiving emails from it, send an email to play-framework+unsubscribe@googlegroups.com.
To view this discussion on the web visit https://groups.google.com/d/msgid/play-framework/658b478a-edb3-4b5c-bc58-57f901728793%40googlegroups.com.
For more options, visit https://groups.google.com/d/optout.



--
Greg Methvin
Tech Lead - Play Framework

Hugo Play

unread,
Nov 6, 2017, 2:57:50 PM11/6/17
to Play Framework
Hi Greg,

Thanks a lot! I just moved from Java 9 to 8 and issue solved. I'm just toying around the framework and I don't need to step into issues related to Java 9 (I bet I'd step into some others since it is so-so new).

Thanks for your time and amazing answer.
Hugo

To unsubscribe from this group and stop receiving emails from it, send an email to play-framewor...@googlegroups.com.
Reply all
Reply to author
Forward
0 new messages