Java 9 - javax.xml.bind.DatatypeConverter class not found

441 views
Skip to first unread message

Thibault Meyer

unread,
Mar 11, 2018, 4:34:13 AM3/11/18
to Play Framework
Hello,

Try to run Play 2.6.12 on SBT 1.1.1 with Java9, got this issue (relative to JWT token used by Play session):

Uncaught error from thread [application-akka.actor.default-dispatcher-3]: javax/xml/bind/DatatypeConverter, shutting down JVM since 'akka.jvm-exit-on-fatal-error' is enabled for ActorSystem[application]
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:225)
 at play
.core.server.AkkaHttpServer.$anonfun$runAction$5(AkkaHttpServer.scala:323)
 at scala
.concurrent.Future.$anonfun$flatMap$1(Future.scala:304)
 at scala
.concurrent.impl.Promise.$anonfun$transformWith$1(Promise.scala:37)
 at scala
.concurrent.impl.CallbackRunnable.run(Promise.scala:60)
 at akka
.dispatch.BatchingExecutor$AbstractBatch.processBatch(BatchingExecutor.scala:55)
 at akka
.dispatch.BatchingExecutor$BlockableBatch.$anonfun$run$1(BatchingExecutor.scala:91)
 at scala
.runtime.java8.JFunction0$mcV$sp.apply(JFunction0$mcV$sp.java:12)
 at scala
.concurrent.BlockContext$.withBlockContext(BlockContext.scala:81)
 at akka
.dispatch.BatchingExecutor$BlockableBatch.run(BatchingExecutor.scala:91)
 at akka
.dispatch.TaskInvocation.run(AbstractDispatcher.scala:40)
 at akka
.dispatch.ForkJoinExecutorConfigurator$AkkaForkJoinTask.exec(ForkJoinExecutorConfigurator.scala:43)
 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)
 
... 31 more


Reply all
Reply to author
Forward
0 new messages