0
votes

I upgraded my play framework from 2.2.x to 2.3.x.Everything works fine in my local. However, When i deploy it to the server, I got the following error.

java.lang.NoSuchFieldError: Assets
at securesocial.core.services.RoutesService$Default.valueFor(RoutesService.scala:73)
at securesocial.core.services.RoutesService$Default.<init>(RoutesService.scala:80)
at securesocial.core.RuntimeEnvironment$Default.routes$lzycompute(RuntimeEnvironment.scala:47)
at securesocial.core.RuntimeEnvironment$Default.routes(RuntimeEnvironment.scala:47)
at securesocial.core.SecureSocial$$anonfun$notAuthenticatedResult$1.applyOrElse(SecureSocial.scala:52)
at securesocial.core.SecureSocial$$anonfun$notAuthenticatedResult$1.applyOrElse(SecureSocial.scala:50)
at play.api.mvc.Rendering$render$.play$api$mvc$Rendering$render$$_render$1(Render.scala:35)
at play.api.mvc.Rendering$render$.apply(Render.scala:41)
at securesocial.core.SecureSocial$class.notAuthenticatedResult(SecureSocial.scala:50)
at controllers.UserHandler.notAuthenticatedResult(UserHandler.scala:22)
at securesocial.core.SecureSocial$SecuredActionBuilder$$anonfun$invokeSecuredBlock$1.apply(SecureSocial.scala:128)
at securesocial.core.SecureSocial$SecuredActionBuilder$$anonfun$invokeSecuredBlock$1.apply(SecureSocial.scala:110)
at scala.concurrent.Future$$anonfun$flatMap$1.apply(Future.scala:251)
at scala.concurrent.Future$$anonfun$flatMap$1.apply(Future.scala:249)
at scala.concurrent.impl.CallbackRunnable.run(Promise.scala:32)
at scala.concurrent.impl.ExecutionContextImpl$AdaptedForkJoinTask.exec(ExecutionContextImpl.scala:121)
at scala.concurrent.forkjoin.ForkJoinTask.doExec(ForkJoinTask.java:260)
at scala.concurrent.forkjoin.ForkJoinPool$WorkQueue.pollAndExecAll(ForkJoinPool.java:1253)
at scala.concurrent.forkjoin.ForkJoinPool$WorkQueue.runTask(ForkJoinPool.java:1346)
at scala.concurrent.forkjoin.ForkJoinPool.runWorker(ForkJoinPool.java:1979)
at scala.concurrent.forkjoin.ForkJoinWorkerThread.run(ForkJoinWorkerThread.java:107)

UserHandler

class UserHandler(override implicit val env: RuntimeEnvironment[DemoUser]) extends securesocial.core.SecureSocial[DemoUser]{
1

1 Answers

0
votes

If your application runs behind a proxy or Web server (Apache or Ngninx), be sure to let Play be responsable for resolve /assets/** routes.

For exemple, if you have an Nginx server, check that the following lines (or equivalent) are commented :

location ~ ^/(assets)/  {
  root /path/to/site;
  gzip_static on;
  expires max;
  add_header Cache-Control public;
  # access_log /dev/null;
}