edeustace / assets-loader

a play plugin to help with asset loading.
MIT License
31 stars 8 forks source link

Exception when using loader helper #14

Closed nonameplum closed 10 years ago

nonameplum commented 10 years ago

Hi, I'm trying to use this plugin and is working for me but when I'm trying to use loader Helper.scala like in sample application I'm getting fatal error like this:

[info] play - Application started (Dev)
[ERROR] [01/23/2014 15:42:36.463] [play-akka.actor.default-dispatcher-3] [ActorSystem(play)] Uncaught error from thread [play-akka.actor.default-dispatcher-3] shutting down JVM since 'akka.jvm-exit-on-fatal-error' is enabled
Uncaught error from thread [play-akka.actor.default-dispatcher-3] shutting down JVM since 'akka.jvm-exit-on-fatal-error' is enabled for ActorSystem[play]
java.lang.ExceptionInInitializerError
java.lang.ExceptionInInitializerError
    at views.html.towary$.scripts$1(towary.template.scala:49)
    at views.html.towary$.scripts$1(towary.template.scala:49)
    at views.html.towary$.apply(towary.template.scala:66)
    at views.html.towary$.apply(towary.template.scala:66)
    at views.html.towary$.render(towary.template.scala:166)
    at views.html.towary$.render(towary.template.scala:166)
    at views.html.towary.render(towary.template.scala)
    at views.html.towary.render(towary.template.scala)
    at controllers.Towary.getTowary(Towary.java:47)
    at controllers.Towary.getTowary(Towary.java:47)
    at Routes$$anonfun$routes$1$$anonfun$applyOrElse$17$$anonfun$apply$17.apply(routes_routing.scala:253)
    at Routes$$anonfun$routes$1$$anonfun$applyOrElse$17$$anonfun$apply$17.apply(routes_routing.scala:253)
    at Routes$$anonfun$routes$1$$anonfun$applyOrElse$17$$anonfun$apply$17.apply(routes_routing.scala:253)
    at Routes$$anonfun$routes$1$$anonfun$applyOrElse$17$$anonfun$apply$17.apply(routes_routing.scala:253)
    at play.core.Router$HandlerInvoker$$anon$7$$anon$2.invocation(Router.scala:183)
    at play.core.Router$HandlerInvoker$$anon$7$$anon$2.invocation(Router.scala:183)
    at play.core.Router$Routes$$anon$1.invocation(Router.scala:377)
    at play.core.Router$Routes$$anon$1.invocation(Router.scala:377)
    at play.core.j.JavaAction$$anon$1.call(JavaAction.scala:56)
    at play.core.j.JavaAction$$anon$1.call(JavaAction.scala:56)
    at Global$1.call(Global.java:20)
    at Global$1.call(Global.java:20)
    at actions.KontrahentAction.call(KontrahentAction.java:14)
    at actions.KontrahentAction.call(KontrahentAction.java:14)
    at play.core.j.JavaAction$$anon$3.apply(JavaAction.scala:91)
    at play.core.j.JavaAction$$anon$3.apply(JavaAction.scala:91)
    at play.core.j.JavaAction$$anon$3.apply(JavaAction.scala:90)
    at play.core.j.JavaAction$$anon$3.apply(JavaAction.scala:90)
    at play.core.j.FPromiseHelper$$anonfun$flatMap$1.apply(FPromiseHelper.scala:82)
    at play.core.j.FPromiseHelper$$anonfun$flatMap$1.apply(FPromiseHelper.scala:82)
    at play.core.j.FPromiseHelper$$anonfun$flatMap$1.apply(FPromiseHelper.scala:82)
    at play.core.j.FPromiseHelper$$anonfun$flatMap$1.apply(FPromiseHelper.scala:82)
    at scala.concurrent.Future$$anonfun$flatMap$1.apply(Future.scala:278)
    at scala.concurrent.Future$$anonfun$flatMap$1.apply(Future.scala:278)
    at scala.concurrent.Future$$anonfun$flatMap$1.apply(Future.scala:274)
    at scala.concurrent.Future$$anonfun$flatMap$1.apply(Future.scala:274)
    at scala.concurrent.impl.CallbackRunnable.run(Promise.scala:29)
    at scala.concurrent.impl.CallbackRunnable.run(Promise.scala:29)
    at play.core.j.HttpExecutionContext$$anon$2.run(HttpExecutionContext.scala:37)
    at play.core.j.HttpExecutionContext$$anon$2.run(HttpExecutionContext.scala:37)
    at akka.dispatch.TaskInvocation.run(AbstractDispatcher.scala:42)
    at akka.dispatch.TaskInvocation.run(AbstractDispatcher.scala:42)
    at akka.dispatch.ForkJoinExecutorConfigurator$AkkaForkJoinTask.exec(AbstractDispatcher.scala:386)
    at akka.dispatch.ForkJoinExecutorConfigurator$AkkaForkJoinTask.exec(AbstractDispatcher.scala:386)
    at scala.concurrent.forkjoin.ForkJoinTask.doExec(ForkJoinTask.java:260)
    at scala.concurrent.forkjoin.ForkJoinTask.doExec(ForkJoinTask.java:260)
    at scala.concurrent.forkjoin.ForkJoinPool$WorkQueue.runTask(ForkJoinPool.java:1339)
    at scala.concurrent.forkjoin.ForkJoinPool$WorkQueue.runTask(ForkJoinPool.java:1339)
    at scala.concurrent.forkjoin.ForkJoinPool.runWorker(ForkJoinPool.java:1979)
    at scala.concurrent.forkjoin.ForkJoinWorkerThread.run(ForkJoinWorkerThread.java:107)
Caused by: java.lang.NullPointerException
    at scala.collection.mutable.ArrayOps$ofRef$.newBuilder$extension(ArrayOps.scala:112)
    at scala.collection.mutable.ArrayOps$ofRef.newBuilder(ArrayOps.scala:108)
    at scala.concurrent.forkjoin.ForkJoinPool.runWorker(ForkJoinPool.java:1979)
    at scala.collection.TraversableLike$class.filter(TraversableLike.scala:262)
    at scala.concurrent.forkjoin.ForkJoinWorkerThread.run(ForkJoinWorkerThread.java:107)
    at scala.collection.mutable.ArrayOps$ofRef.filter(ArrayOps.scala:108)
Caused by: java.lang.NullPointerException
    at scala.collection.TraversableLike$class.filterNot(TraversableLike.scala:274)
    at scala.collection.mutable.ArrayOps$ofRef$.newBuilder$extension(ArrayOps.scala:112)
    at scala.collection.mutable.ArrayOps$ofRef.filterNot(ArrayOps.scala:108)
    at scala.collection.mutable.ArrayOps$ofRef.newBuilder(ArrayOps.scala:108)
    at com.ee.utils.play.package$.com$ee$utils$play$package$$loadFromScriptName$1(package.scala:74)
    at scala.collection.TraversableLike$class.filter(TraversableLike.scala:262)
    at com.ee.utils.play.package$$anonfun$getAppJar$3.apply(package.scala:99)
    at scala.collection.mutable.ArrayOps$ofRef.filter(ArrayOps.scala:108)
    at com.ee.utils.play.package$$anonfun$getAppJar$3.apply(package.scala:99)
    at scala.collection.TraversableLike$class.filterNot(TraversableLike.scala:274)
    at scala.Option.orElse(Option.scala:257)
    at scala.collection.mutable.ArrayOps$ofRef.filterNot(ArrayOps.scala:108)
    at com.ee.utils.play.package$.getAppJar(package.scala:99)
    at com.ee.utils.play.package$.com$ee$utils$play$package$$loadFromScriptName$1(package.scala:74)
    at com.ee.utils.play.package$.explodedJarFolder(package.scala:108)
    at com.ee.utils.play.package$$anonfun$getAppJar$3.apply(package.scala:99)
    at com.ee.utils.play.package$.initAssetsFolder(package.scala:30)
    at com.ee.utils.play.package$$anonfun$getAppJar$3.apply(package.scala:99)
    at com.ee.utils.play.package$.assetsFolder(package.scala:18)
    at scala.Option.orElse(Option.scala:257)
    at com.ee.assets.Loader.assetsFolder$lzycompute(Loader.scala:106)
    at com.ee.utils.play.package$.getAppJar(package.scala:99)
    at com.ee.assets.Loader.assetsFolder(Loader.scala:106)
    at com.ee.utils.play.package$.explodedJarFolder(package.scala:108)
    at com.ee.assets.Loader.<init>(Loader.scala:40)
    at com.ee.utils.play.package$.initAssetsFolder(package.scala:30)
    at views.Helper$.<init>(Helper.scala:6)
    at views.Helper$.<clinit>(Helper.scala)
    ... 26 more
    at com.ee.utils.play.package$.assetsFolder(package.scala:18)
    at com.ee.assets.Loader.assetsFolder$lzycompute(Loader.scala:106)
    at com.ee.assets.Loader.assetsFolder(Loader.scala:106)
    at com.ee.assets.Loader.<init>(Loader.scala:40)
    at views.Helper$.<init>(Helper.scala:6)
    at views.Helper$.<clinit>(Helper.scala)

When in template I'm using only this notation:

<script type="text/javascript" src="@com.ee.assets.controllers.routes.Assets.at("js/modules/koszyk-service.js")"></script>

then everything works great but if I add to template loader call like this:

@views.Helper.loader.scripts("towary")( "js/modules/koszyk-service.js" )

then I'm getting fatal error.

Best regards, Lukas

PS. Debug log from assets loader:

[debug] assets.loader - creating config for: dev, js
[debug] assets.loader - Configuration(Config(SimpleConfigObject({"prod":{"minify":true,"concatenate":true,"gzip":true},"dev":{"css":{"minify":false,"concatenate":"fasle","gzip":false},"js":{"minify":false,"concatenate":false,"gzip":false}},"test":{"minify":false,"concatenate":true}})))
[debug] assets.loader - concatenate: Some(false)
[debug] assets.loader - minify: Some(false)
[debug] assets.loader - gzip: Some(false)
[debug] assets.loader - deploy: None
[debug] assets.loader - This is a dist/stage structure: initialising exploded jar...
[debug] assets.loader - Configured jar file: None
[debug] assets.loader - using bin folder: C:\Users\Lukasz\IdeaProjects\polink-play\bin
[debug] assets.loader - using lib folder: C:\Users\Lukasz\IdeaProjects\polink-play\lib
nonameplum commented 10 years ago

I tried "play run" and "play start". I'm always getting error. I also simplified the build.scala - remove other plugins, and created test view like im sample app.

I can give access to my private repo on bitbucket.

edeustace commented 10 years ago

Hi, There is an known issue with 11.4 - I'm fixing as we speak and I'm publishing 11.5-SNAPSHOT now for testing. I'll ask you to try that once its up.

nonameplum commented 10 years ago

Hi, Thanks for support. I'm getting this expcetion also in 11.5-SNAPSHOT for now. So I look forward to hearing from you/ Result from simplified views and controller with Snapshot.

[debug] assets.loader - creating config for: dev, js
[debug] assets.loader - Configuration(Config(SimpleConfigObject({"prod":{"minify":true,"concatenate":true,"gzip":true},"dev":{"css":{"minify":false,"concatenate":false,"gzip":false},"js":{"minify":true,"concatenate":false,"gzip":true}},"test":{"minify":false,"concatenate":true}})))
[debug] assets.loader - concatenate: Some(false)
[debug] assets.loader - minify: Some(true)
[debug] assets.loader - gzip: Some(true)
[debug] assets.loader - deploy: None
[debug] assets.loader - This is a dist/stage structure: initialising exploded jar...
[debug] assets.loader - Configured jar file: None
[debug] assets.loader - using bin folder: C:\Users\Lukasz\IdeaProjects\polink-play\bin
[debug] assets.loader - using lib folder: C:\Users\Lukasz\IdeaProjects\polink-play\lib
[ERROR] [01/24/2014 11:53:30.458] [play-akka.actor.default-dispatcher-4] [ActorSystem(play)] Uncaught error from thread [play-akka.actor.default-dispatcher-4] shutting down JVM since 'akka.jvm-exit-on-fatal-error' is enabled
java.lang.ExceptionInInitializerError
    at views.html.main2$.apply(main2.template.scala:36)
    at views.html.index2$.apply(index2.template.scala:31)
    at views.html.index2$.render(index2.template.scala:39)
    at views.html.index2.render(index2.template.scala)
    at controllers.Test.index(Test.java:11)
    at Routes$$anonfun$routes$1$$anonfun$applyOrElse$1$$anonfun$apply$1.apply(routes_routing.scala:125)
    at Routes$$anonfun$routes$1$$anonfun$applyOrElse$1$$anonfun$apply$1.apply(routes_routing.scala:125)
    at play.core.Router$HandlerInvoker$$anon$7$$anon$2.invocation(Router.scala:183)
    at play.core.Router$Routes$$anon$1.invocation(Router.scala:377)
    at play.core.j.JavaAction$$anon$1.call(JavaAction.scala:56)
    at Global$1.call(Global.java:18)
    at play.core.j.JavaAction$$anon$3.apply(JavaAction.scala:91)
    at play.core.j.JavaAction$$anon$3.apply(JavaAction.scala:90)
    at play.core.j.FPromiseHelper$$anonfun$flatMap$1.apply(FPromiseHelper.scala:82)
    at play.core.j.FPromiseHelper$$anonfun$flatMap$1.apply(FPromiseHelper.scala:82)
    at scala.concurrent.Future$$anonfun$flatMap$1.apply(Future.scala:278)
    at scala.concurrent.Future$$anonfun$flatMap$1.apply(Future.scala:274)
    at scala.concurrent.impl.CallbackRunnable.run(Promise.scala:29)
    at play.core.j.HttpExecutionContext$$anon$2.run(HttpExecutionContext.scala:37)
    at akka.dispatch.TaskInvocation.run(AbstractDispatcher.scala:42)
    at akka.dispatch.ForkJoinExecutorConfigurator$AkkaForkJoinTask.exec(AbstractDispatcher.scala:386)
    at scala.concurrent.forkjoin.ForkJoinTask.doExec(ForkJoinTask.java:260)
    at scala.concurrent.forkjoin.ForkJoinPool$WorkQueue.runTask(ForkJoinPool.java:1339)
    at scala.concurrent.forkjoin.ForkJoinPool.runWorker(ForkJoinPool.java:1979)
    at scala.concurrent.forkjoin.ForkJoinWorkerThread.run(ForkJoinWorkerThread.java:107)
Caused by: java.lang.NullPointerException
    at scala.collection.mutable.ArrayOps$ofRef$.newBuilder$extension(ArrayOps.scala:112)
    at scala.collection.mutable.ArrayOps$ofRef.newBuilder(ArrayOps.scala:108)
    at scala.collection.TraversableLike$class.filter(TraversableLike.scala:262)
    at scala.collection.mutable.ArrayOps$ofRef.filter(ArrayOps.scala:108)
    at scala.collection.TraversableLike$class.filterNot(TraversableLike.scala:274)
    at scala.collection.mutable.ArrayOps$ofRef.filterNot(ArrayOps.scala:108)
    at com.ee.utils.play.package$.com$ee$utils$play$package$$loadFromScriptName$1(package.scala:74)
    at com.ee.utils.play.package$$anonfun$getAppJar$3.apply(package.scala:99)
    at com.ee.utils.play.package$$anonfun$getAppJar$3.apply(package.scala:99)
    at scala.Option.orElse(Option.scala:257)
    at com.ee.utils.play.package$.getAppJar(package.scala:99)
    at com.ee.utils.play.package$.explodedJarFolder(package.scala:108)
    at com.ee.utils.play.package$.initAssetsFolder(package.scala:30)
    at com.ee.utils.play.package$.assetsFolder(package.scala:18)
    at com.ee.assets.Loader.assetsFolder$lzycompute(Loader.scala:134)
    at com.ee.assets.Loader.assetsFolder(Loader.scala:134)
    at com.ee.assets.Loader.<init>(Loader.scala:50)
    at views.Helper$.<init>(Helper.scala:6)
    at views.Helper$.<clinit>(Helper.scala)
    ... 25 more

Uncaught error from thread [play-akka.actor.default-dispatcher-4] shutting down JVM since 'akka.jvm-exit-on-fatal-error' is enabled for ActorSystem[play]
java.lang.ExceptionInInitializerError
    at views.html.main2$.apply(main2.template.scala:36)
    at views.html.index2$.apply(index2.template.scala:31)
    at views.html.index2$.render(index2.template.scala:39)
    at views.html.index2.render(index2.template.scala)
    at controllers.Test.index(Test.java:11)
    at Routes$$anonfun$routes$1$$anonfun$applyOrElse$1$$anonfun$apply$1.apply(routes_routing.scala:125)
    at Routes$$anonfun$routes$1$$anonfun$applyOrElse$1$$anonfun$apply$1.apply(routes_routing.scala:125)
    at play.core.Router$HandlerInvoker$$anon$7$$anon$2.invocation(Router.scala:183)
    at play.core.Router$Routes$$anon$1.invocation(Router.scala:377)
    at play.core.j.JavaAction$$anon$1.call(JavaAction.scala:56)
    at Global$1.call(Global.java:18)
    at play.core.j.JavaAction$$anon$3.apply(JavaAction.scala:91)
    at play.core.j.JavaAction$$anon$3.apply(JavaAction.scala:90)
    at play.core.j.FPromiseHelper$$anonfun$flatMap$1.apply(FPromiseHelper.scala:82)
    at play.core.j.FPromiseHelper$$anonfun$flatMap$1.apply(FPromiseHelper.scala:82)
    at scala.concurrent.Future$$anonfun$flatMap$1.apply(Future.scala:278)
    at scala.concurrent.Future$$anonfun$flatMap$1.apply(Future.scala:274)
    at scala.concurrent.impl.CallbackRunnable.run(Promise.scala:29)
    at play.core.j.HttpExecutionContext$$anon$2.run(HttpExecutionContext.scala:37)
    at akka.dispatch.TaskInvocation.run(AbstractDispatcher.scala:42)
    at akka.dispatch.ForkJoinExecutorConfigurator$AkkaForkJoinTask.exec(AbstractDispatcher.scala:386)
    at scala.concurrent.forkjoin.ForkJoinTask.doExec(ForkJoinTask.java:260)
    at scala.concurrent.forkjoin.ForkJoinPool$WorkQueue.runTask(ForkJoinPool.java:1339)
    at scala.concurrent.forkjoin.ForkJoinPool.runWorker(ForkJoinPool.java:1979)
    at scala.concurrent.forkjoin.ForkJoinWorkerThread.run(ForkJoinWorkerThread.java:107)
Caused by: java.lang.NullPointerException
    at scala.collection.mutable.ArrayOps$ofRef$.newBuilder$extension(ArrayOps.scala:112)
    at scala.collection.mutable.ArrayOps$ofRef.newBuilder(ArrayOps.scala:108)
    at scala.collection.TraversableLike$class.filter(TraversableLike.scala:262)
    at scala.collection.mutable.ArrayOps$ofRef.filter(ArrayOps.scala:108)
    at scala.collection.TraversableLike$class.filterNot(TraversableLike.scala:274)
    at scala.collection.mutable.ArrayOps$ofRef.filterNot(ArrayOps.scala:108)
    at com.ee.utils.play.package$.com$ee$utils$play$package$$loadFromScriptName$1(package.scala:74)
    at com.ee.utils.play.package$$anonfun$getAppJar$3.apply(package.scala:99)
    at com.ee.utils.play.package$$anonfun$getAppJar$3.apply(package.scala:99)
    at scala.Option.orElse(Option.scala:257)
    at com.ee.utils.play.package$.getAppJar(package.scala:99)
    at com.ee.utils.play.package$.explodedJarFolder(package.scala:108)
    at com.ee.utils.play.package$.initAssetsFolder(package.scala:30)
    at com.ee.utils.play.package$.assetsFolder(package.scala:18)
    at com.ee.assets.Loader.assetsFolder$lzycompute(Loader.scala:134)
    at com.ee.assets.Loader.assetsFolder(Loader.scala:134)
    at com.ee.assets.Loader.<init>(Loader.scala:50)
    at views.Helper$.<init>(Helper.scala:6)
    at views.Helper$.<clinit>(Helper.scala)
    ... 25 more

Build.scala

import sbt._
import Keys._
import play.Project._

object ApplicationBuild extends Build {

  val appName         = "polink-play"
  val appVersion      = "1.0-SNAPSHOT"

  val appDependencies = Seq(
    javaCore,
    javaJdbc,
    javaEbean,
    anorm,
    cache
  )

  val assetsLoader = "com.ee" %% "assets-loader" % "0.11.5-SNAPSHOT"
  val edeustaceReleases= "ed eustace" at "http://edeustace.com/repository/releases/"
  val edeustaceSnapshots = "ed eustace snapshots" at "http://edeustace.com/repository/snapshots/"

  val main = play.Project(appName, appVersion, appDependencies).settings(
    libraryDependencies += assetsLoader,
    resolvers += edeustaceSnapshots
  )

}
edeustace commented 10 years ago

Hi, 11.5 isn't ready yet - please wait. Best, Ed

On Fri, Jan 24, 2014 at 11:00 AM, nonameplum notifications@github.comwrote:

Hi, Thanks for support. I'm getting this expcetion also in 11.5-SNAPSHOT for now. Result from simplified views and controller.

[debug] assets.loader - creating config for: dev, js [debug] assets.loader - Configuration(Config(SimpleConfigObject({"prod":{"minify":true,"concatenate":true,"gzip":true},"dev":{"css":{"minify":false,"concatenate":false,"gzip":false},"js":{"minify":true,"concatenate":false,"gzip":true}},"test":{"minify":false,"concatenate":true}}))) [debug] assets.loader - concatenate: Some(false) [debug] assets.loader - minify: Some(true) [debug] assets.loader - gzip: Some(true) [debug] assets.loader - deploy: None [debug] assets.loader - This is a dist/stage structure: initialising exploded jar... [debug] assets.loader - Configured jar file: None [debug] assets.loader - using bin folder: C:\Users\Lukasz\IdeaProjects\polink-play\bin [debug] assets.loader - using lib folder: C:\Users\Lukasz\IdeaProjects\polink-play\lib [ERROR] [01/24/2014 11:53:30.458] [play-akka.actor.default-dispatcher-4] [ActorSystem(play)] Uncaught error from thread [play-akka.actor.default-dispatcher-4] shutting down JVM since 'akka.jvm-exit-on-fatal-error' is enabled java.lang.ExceptionInInitializerError at views.html.main2$.apply(main2.template.scala:36) at views.html.index2$.apply(index2.template.scala:31) at views.html.index2$.render(index2.template.scala:39) at views.html.index2.render(index2.template.scala) at controllers.Test.index(Test.java:11) at Routes$$anonfun$routes$1$$anonfun$applyOrElse$1$$anonfun$apply$1.apply(routes_routing.scala:125) at Routes$$anonfun$routes$1$$anonfun$applyOrElse$1$$anonfun$apply$1.apply(routes_routing.scala:125) at play.core.Router$HandlerInvoker$$anon$7$$anon$2.invocation(Router.scala:183) at play.core.Router$Routes$$anon$1.invocation(Router.scala:377) at play.core.j.JavaAction$$anon$1.call(JavaAction.scala:56) at Global$1.call(Global.java:18) at play.core.j.JavaAction$$anon$3.apply(JavaAction.scala:91) at play.core.j.JavaAction$$anon$3.apply(JavaAction.scala:90) at play.core.j.FPromiseHelper$$anonfun$flatMap$1.apply(FPromiseHelper.scala:82) at play.core.j.FPromiseHelper$$anonfun$flatMap$1.apply(FPromiseHelper.scala:82) at scala.concurrent.Future$$anonfun$flatMap$1.apply(Future.scala:278) at scala.concurrent.Future$$anonfun$flatMap$1.apply(Future.scala:274) at scala.concurrent.impl.CallbackRunnable.run(Promise.scala:29) at play.core.j.HttpExecutionContext$$anon$2.run(HttpExecutionContext.scala:37) at akka.dispatch.TaskInvocation.run(AbstractDispatcher.scala:42) at akka.dispatch.ForkJoinExecutorConfigurator$AkkaForkJoinTask.exec(AbstractDispatcher.scala:386) at scala.concurrent.forkjoin.ForkJoinTask.doExec(ForkJoinTask.java:260) at scala.concurrent.forkjoin.ForkJoinPool$WorkQueue.runTask(ForkJoinPool.java:1339) at scala.concurrent.forkjoin.ForkJoinPool.runWorker(ForkJoinPool.java:1979) at scala.concurrent.forkjoin.ForkJoinWorkerThread.run(ForkJoinWorkerThread.java:107) Caused by: java.lang.NullPointerException at scala.collection.mutable.ArrayOps$ofRef$.newBuilder$extension(ArrayOps.scala:112) at scala.collection.mutable.ArrayOps$ofRef.newBuilder(ArrayOps.scala:108) at scala.collection.TraversableLike$class.filter(TraversableLike.scala:262) at scala.collection.mutable.ArrayOps$ofRef.filter(ArrayOps.scala:108) at scala.collection.TraversableLike$class.filterNot(TraversableLike.scala:274) at scala.collection.mutable.ArrayOps$ofRef.filterNot(ArrayOps.scala:108) at com.ee.utils.play.package$.com$ee$utils$play$package$$loadFromScriptName$1(package.scala:74) at com.ee.utils.play.package$$anonfun$getAppJar$3.apply(package.scala:99) at com.ee.utils.play.package$$anonfun$getAppJar$3.apply(package.scala:99) at scala.Option.orElse(Option.scala:257) at com.ee.utils.play.package$.getAppJar(package.scala:99) at com.ee.utils.play.package$.explodedJarFolder(package.scala:108) at com.ee.utils.play.package$.initAssetsFolder(package.scala:30) at com.ee.utils.play.package$.assetsFolder(package.scala:18) at com.ee.assets.Loader.assetsFolder$lzycompute(Loader.scala:134) at com.ee.assets.Loader.assetsFolder(Loader.scala:134) at com.ee.assets.Loader.(Loader.scala:50) at views.Helper$.(Helper.scala:6) at views.Helper$.(Helper.scala) ... 25 more

Uncaught error from thread [play-akka.actor.default-dispatcher-4] shutting down JVM since 'akka.jvm-exit-on-fatal-error' is enabled for ActorSystem[play] java.lang.ExceptionInInitializerError at views.html.main2$.apply(main2.template.scala:36) at views.html.index2$.apply(index2.template.scala:31) at views.html.index2$.render(index2.template.scala:39) at views.html.index2.render(index2.template.scala) at controllers.Test.index(Test.java:11) at Routes$$anonfun$routes$1$$anonfun$applyOrElse$1$$anonfun$apply$1.apply(routes_routing.scala:125) at Routes$$anonfun$routes$1$$anonfun$applyOrElse$1$$anonfun$apply$1.apply(routes_routing.scala:125) at play.core.Router$HandlerInvoker$$anon$7$$anon$2.invocation(Router.scala:183) at play.core.Router$Routes$$anon$1.invocation(Router.scala:377) at play.core.j.JavaAction$$anon$1.call(JavaAction.scala:56) at Global$1.call(Global.java:18) at play.core.j.JavaAction$$anon$3.apply(JavaAction.scala:91) at play.core.j.JavaAction$$anon$3.apply(JavaAction.scala:90) at play.core.j.FPromiseHelper$$anonfun$flatMap$1.apply(FPromiseHelper.scala:82) at play.core.j.FPromiseHelper$$anonfun$flatMap$1.apply(FPromiseHelper.scala:82) at scala.concurrent.Future$$anonfun$flatMap$1.apply(Future.scala:278) at scala.concurrent.Future$$anonfun$flatMap$1.apply(Future.scala:274) at scala.concurrent.impl.CallbackRunnable.run(Promise.scala:29) at play.core.j.HttpExecutionContext$$anon$2.run(HttpExecutionContext.scala:37) at akka.dispatch.TaskInvocation.run(AbstractDispatcher.scala:42) at akka.dispatch.ForkJoinExecutorConfigurator$AkkaForkJoinTask.exec(AbstractDispatcher.scala:386) at scala.concurrent.forkjoin.ForkJoinTask.doExec(ForkJoinTask.java:260) at scala.concurrent.forkjoin.ForkJoinPool$WorkQueue.runTask(ForkJoinPool.java:1339) at scala.concurrent.forkjoin.ForkJoinPool.runWorker(ForkJoinPool.java:1979) at scala.concurrent.forkjoin.ForkJoinWorkerThread.run(ForkJoinWorkerThread.java:107) Caused by: java.lang.NullPointerException at scala.collection.mutable.ArrayOps$ofRef$.newBuilder$extension(ArrayOps.scala:112) at scala.collection.mutable.ArrayOps$ofRef.newBuilder(ArrayOps.scala:108) at scala.collection.TraversableLike$class.filter(TraversableLike.scala:262) at scala.collection.mutable.ArrayOps$ofRef.filter(ArrayOps.scala:108) at scala.collection.TraversableLike$class.filterNot(TraversableLike.scala:274) at scala.collection.mutable.ArrayOps$ofRef.filterNot(ArrayOps.scala:108) at com.ee.utils.play.package$.com$ee$utils$play$package$$loadFromScriptName$1(package.scala:74) at com.ee.utils.play.package$$anonfun$getAppJar$3.apply(package.scala:99) at com.ee.utils.play.package$$anonfun$getAppJar$3.apply(package.scala:99) at scala.Option.orElse(Option.scala:257) at com.ee.utils.play.package$.getAppJar(package.scala:99) at com.ee.utils.play.package$.explodedJarFolder(package.scala:108) at com.ee.utils.play.package$.initAssetsFolder(package.scala:30) at com.ee.utils.play.package$.assetsFolder(package.scala:18) at com.ee.assets.Loader.assetsFolder$lzycompute(Loader.scala:134) at com.ee.assets.Loader.assetsFolder(Loader.scala:134) at com.ee.assets.Loader.(Loader.scala:50) at views.Helper$.(Helper.scala:6) at views.Helper$.(Helper.scala) ... 25 more

Build.scala

import sbt. import Keys. import play.Project._

object ApplicationBuild extends Build {

val appName = "polink-play" val appVersion = "1.0-SNAPSHOT"

val appDependencies = Seq( javaCore, javaJdbc, javaEbean, anorm, cache )

val assetsLoader = "com.ee" %% "assets-loader" % "0.11.5-SNAPSHOT" val edeustaceReleases= "ed eustace" at "http://edeustace.com/repository/releases/" val edeustaceSnapshots = "ed eustace snapshots" at "http://edeustace.com/repository/snapshots/"

val main = play.Project(appName, appVersion, appDependencies).settings( libraryDependencies += assetsLoader, resolvers += edeustaceSnapshots )

}

— Reply to this email directly or view it on GitHubhttps://github.com/edeustace/assets-loader/issues/14#issuecomment-33214106 .

edeustace commented 10 years ago

Ok @nonameplum try 11.5-SNAPSHOT now - let me know if you have any issues.

nonameplum commented 10 years ago

Hi, Thanks for changes. Now I'm getting another exception:

[info] play - Application started (Dev)
[warn] a.l.new-loader - Note: deployer is currently disabled
[info] a.l.new-loader - [js] mode: Dev
[debug] a.l.new-loader - [js] create tag for: javascripts/test - javascripts/test.js
[debug] a.loader.config - creating config for: dev, js
[debug] a.l.new-loader - [toElements]: WrappedArray(javascripts/test.js)
[error] play - Cannot invoke the action, eventually got an error: java.lang.StringIndexOutOfBoundsException: String index out of range: -1

Main html file:

<!DOCTYPE html>

<html>
    <head>
        <title>Test assets loader</title>
        @views.Helper.loader.scripts("javascripts/test")("javascripts/test.js")
    </head>
    <body>
        @content
    </body>
</html>
edeustace commented 10 years ago

Can you send me a test project, should be a simple fix. Will prob have a look at it in the morning. On 24 Jan 2014 20:41, "nonameplum" notifications@github.com wrote:

Hi, Thanks for changes. Now I'm getting another exception:

[info] play - Application started (Dev) [warn] a.l.new-loader - Note: deployer is currently disabled [info] a.l.new-loader - [js] mode: Dev [debug] a.l.new-loader - [js] create tag for: javascripts/test - javascripts/test.js [debug] a.loader.config - creating config for: dev, js

[error] play - Cannot invoke the action, eventually got an error: java.lang.StringIndexOutOfBoundsException: String index out of range: -1

— Reply to this email directly or view it on GitHubhttps://github.com/edeustace/assets-loader/issues/14#issuecomment-33258774 .

nonameplum commented 10 years ago

Hi, I created simple project for you: https://github.com/nonameplum/assets-loader-test

edeustace commented 10 years ago

@nonameplum - I just forked and cloned that repo.

I ran:

play run

play clean stage
./target/universal/stage/bin/assetloadertest

play dist
unzip target/universal/assetLoaderTest-1.0-SNAPSHOT.zip
./assetLoaderTest-1.0-SNAPSHOT/bin/assetloadertest

And they all run (there is a js error on the page that its not due to the assets loader).

So I can't reproduce so far. Can you provide some more information on how to reproduce?

nonameplum commented 10 years ago

Hi, For now I don't know how to reproduce exception. What I found is that on Windows 8 I'm have this exception:

[info] play - Application started (Dev)
[error] play - Cannot invoke the action, eventually got an error: java.lang.StringIndexOutOfBoundsException: String index out of range: -1
[error] application -

! @6h3hk7bo3 - Internal server error, for (GET) [/] ->

play.api.Application$$anon$1: Execution exception[[StringIndexOutOfBoundsException: String index out of range: -1]]
        at play.api.Application$class.handleError(Application.scala:293) ~[play_2.10-2.2.1.jar:2.2.1]
        at play.api.DefaultApplication.handleError(Application.scala:399) [play_2.10-2.2.1.jar:2.2.1]
        at play.core.server.netty.PlayDefaultUpstreamHandler$$anonfun$2$$anonfun$applyOrElse$3.apply(PlayDefaultUpstreamHandler.scala:261) [play_2.10-
2.2.1.jar:2.2.1]
        at play.core.server.netty.PlayDefaultUpstreamHandler$$anonfun$2$$anonfun$applyOrElse$3.apply(PlayDefaultUpstreamHandler.scala:261) [play_2.10-
2.2.1.jar:2.2.1]
        at scala.Option.map(Option.scala:145) [scala-library.jar:na]
        at play.core.server.netty.PlayDefaultUpstreamHandler$$anonfun$2.applyOrElse(PlayDefaultUpstreamHandler.scala:261) [play_2.10-2.2.1.jar:2.2.1]
Caused by: java.lang.StringIndexOutOfBoundsException: String index out of range: -1
        at java.lang.String.substring(Unknown Source) ~[na:1.8.0-ea]
        at com.ee.assets.paths.PathResolver$$anonfun$filePaths$2.apply(PathResolver.scala:59) ~[assets-loader_2.10-0.11.5-SNAPSHOT.jar:0.11.5-SNAPSHOT]
        at com.ee.assets.paths.PathResolver$$anonfun$filePaths$2.apply(PathResolver.scala:56) ~[assets-loader_2.10-0.11.5-SNAPSHOT.jar:0.11.5-SNAPSHOT]
        at scala.collection.TraversableLike$$anonfun$map$1.apply(TraversableLike.scala:244) ~[scala-library.jar:na]
        at scala.collection.TraversableLike$$anonfun$map$1.apply(TraversableLike.scala:244) ~[scala-library.jar:na]
        at scala.collection.immutable.List.foreach(List.scala:318) ~[scala-library.jar:na]

But I clone this repo on colleague Mac 10.9 and there every thinks works fine. Both using JDK 8 b124.

nonameplum commented 10 years ago

I'm debugging assets loader code and I think I found place where lies potential problem (I don't know scala and it is totaly magic for me for now :)): [Loader.scala]

logger.debug(s"[js] create tag for: $concatPrefix - ${paths.mkString(",")}")
        val tags = prepareTags(
          s => s.endsWith(".js"),
          buildJsTransformations(concatPrefix),
         Templates.script  // here is problem that script method is called without parameter 
        )(paths: _*)
edeustace commented 10 years ago

Ah ok, let me load it up on windows so. Cheers. Ed

On Saturday, January 25, 2014, nonameplum notifications@github.com wrote:

I' debugging assets loader code and I think I found place where lies potential problem: [Loader.scala]

logger.debug(s"[js] create tag for: $concatPrefix - ${paths.mkString(",")}") val tags = prepareTags( s => s.endsWith(".js"), buildJsTransformations(concatPrefix), Templates.script // here is problem that script method is called without parameter )(paths: _*)

— Reply to this email directly or view it on GitHubhttps://github.com/edeustace/assets-loader/issues/14#issuecomment-33285789 .

edeustace commented 10 years ago

@nonameplum - try 11.6-SNAPSHOT - there were issues on windows that have now been fixed.

nonameplum commented 10 years ago

@edeustace - thanks for support. Now is working.