Play 2.5 - too many weird errors

868 views
Skip to first unread message

Peter

unread,
Feb 6, 2017, 7:22:03 PM2/6/17
to Play Framework
I think that I have some problem with my play project. I am developing in Intellij IDEA 2016.3.2


1) When I start application I get error like this or different:
java.lang.NumberFormatException: For input string: ""
 at java
.lang.NumberFormatException.forInputString(NumberFormatException.java:65)
 at java
.lang.Long.parseLong(Long.java:601)
 at java
.lang.Long.parseLong(Long.java:631)
 at scala
.collection.immutable.StringLike$class.toLong(StringLike.scala:230)
 at scala
.collection.immutable.StringOps.toLong(StringOps.scala:31)
 at com
.typesafe.play.sbt.enhancer.PlayEnhancer$$anonfun$bytecodeEnhance$1$$anonfun$apply$2.apply(PlayEnhancer.scala:58)
 at com
.typesafe.play.sbt.enhancer.PlayEnhancer$$anonfun$bytecodeEnhance$1$$anonfun$apply$2.apply(PlayEnhancer.scala:48)
 at com
.typesafe.play.sbt.enhancer.PlayEnhancer$$anonfun$scopedSettings$2.apply(PlayEnhancer.scala:38)
 at com
.typesafe.play.sbt.enhancer.PlayEnhancer$$anonfun$scopedSettings$2.apply(PlayEnhancer.scala:34)
 at scala
.Function1$$anonfun$compose$1.apply(Function1.scala:47)
 at sbt
.$tilde$greater$$anonfun$$u2219$1.apply(TypeFunctions.scala:40)
 at sbt
.std.Transform$$anon$4.work(System.scala:63)
 at sbt
.Execute$$anonfun$submit$1$$anonfun$apply$1.apply(Execute.scala:228)
 at sbt
.Execute$$anonfun$submit$1$$anonfun$apply$1.apply(Execute.scala:228)
 at sbt
.ErrorHandling$.wideConvert(ErrorHandling.scala:17)
 at sbt
.Execute.work(Execute.scala:237)
 at sbt
.Execute$$anonfun$submit$1.apply(Execute.scala:228)
 at sbt
.Execute$$anonfun$submit$1.apply(Execute.scala:228)
 at sbt
.ConcurrentRestrictions$$anon$4$$anonfun$1.apply(ConcurrentRestrictions.scala:159)
 at sbt
.CompletionService$$anon$2.call(CompletionService.scala:28)
 at java
.util.concurrent.FutureTask.run(FutureTask.java:266)
 at java
.util.concurrent.Executors$RunnableAdapter.call(Executors.java:511)
 at java
.util.concurrent.FutureTask.run(FutureTask.java:266)
 at java
.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142)
 at java
.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617)
 at java
.lang.Thread.run(Thread.java:745)
[error] (compile:manipulateBytecode) java.lang.NumberFormatException: For input string: ""

2) Second random binding errors:

For example I have simple login form:

public class LoginForm{

 
@Constraints.Required
 
@Constraints.MinLength (5)
 
@Constraints.MaxLength(20)
 
public String login;

 
@Constraints.Required
 
@Constraints.MinLength (5)
 
@Constraints.MaxLength(20)
 
public String password;}

When I start application and try to post this form I get random binding errors ,which do not always occur. And this is with all forms I have in my app and trying to bind them using:

@Inject
FormFactory formFactory;

Form<LoginForm> loginForm = formFactory.form(LoginForm.class).bindFromRequest();


I have not touch this class for long time.

 Anyway I run activator clean in hope to remove this errors , I restarted project many times and recompiled without any luck I am still getting this errors.
And they are almost impossible to debug. I am thinking of creating new project and moving all thousand classes there..

Peter

unread,
Feb 6, 2017, 8:04:50 PM2/6/17
to Play Framework
This is data binding error:


play
.api.http.HttpErrorHandlerExceptions$$anon$1: Execution exception[[CompletionException: java.lang.IllegalStateException: JSR-303 validated property 'password' does not have a corresponding accessor for data binding - check your DataBinder's configuration (bean property versus direct field access)]]
 at play.api.http.HttpErrorHandlerExceptions$.throwableToUsefulException(HttpErrorHandler.scala:280)
 at play.api.http.DefaultHttpErrorHandler.onServerError(HttpErrorHandler.scala:206)
 at play.api.GlobalSettings$class.onError(GlobalSettings.scala:160)
 at play.api.DefaultGlobal$.onError(GlobalSettings.scala:188)
 at play.api.http.GlobalSettingsHttpErrorHandler.onServerError(HttpErrorHandler.scala:98)
 at play.core.server.netty.PlayRequestHandler$$anonfun$2$$anonfun$apply$1.applyOrElse(PlayRequestHandler.scala:100)
 at play.core.server.netty.PlayRequestHandler$$anonfun$2$$anonfun$apply$1.applyOrElse(PlayRequestHandler.scala:99)
 at scala.concurrent.Future$$anonfun$recoverWith$1.apply(Future.scala:346)
 at scala.concurrent.Future$$anonfun$recoverWith$1.apply(Future.scala:345)
 at scala.concurrent.impl.CallbackRunnable.run(Promise.scala:32)
Caused by: java.util.concurrent.CompletionException: java.lang.IllegalStateException: JSR-303 validated property '
password' does not have a corresponding accessor for data binding - check your DataBinder's configuration (bean property versus direct field access)
 at java
.util.concurrent.CompletableFuture.encodeThrowable(CompletableFuture.java:292)
 at java
.util.concurrent.CompletableFuture.completeThrowable(CompletableFuture.java:308)
 at java
.util.concurrent.CompletableFuture.uniApply(CompletableFuture.java:593)
 at java
.util.concurrent.CompletableFuture$UniApply.tryFire(CompletableFuture.java:577)
 at java
.util.concurrent.CompletableFuture.postComplete(CompletableFuture.java:474)
 at java
.util.concurrent.CompletableFuture.completeExceptionally(CompletableFuture.java:1977)
 at scala
.concurrent.java8.FuturesConvertersImpl$CF.apply(FutureConvertersImpl.scala:21)
 at scala
.concurrent.java8.FuturesConvertersImpl$CF.apply(FutureConvertersImpl.scala:18)
 at scala
.concurrent.impl.CallbackRunnable.run(Promise.scala:32)
 at scala
.concurrent.BatchingExecutor$Batch$$anonfun$run$1.processBatch$1(BatchingExecutor.scala:63)

Peter

unread,
Feb 6, 2017, 8:04:50 PM2/6/17
to Play Framework
Also getting sometimes this error when starting app:

java.io.EOFException
at java.io.DataInputStream.readInt(DataInputStream.java:392)
at javassist.bytecode.ClassFile.read(ClassFile.java:777)
at javassist.bytecode.ClassFile.<init>(ClassFile.java:124)
at javassist.CtClassType.<init>(CtClassType.java:96)
at javassist.ClassPool.makeClass(ClassPool.java:728)
at javassist.ClassPool.makeClass(ClassPool.java:706)
at play.core.enhancers.PropertiesEnhancer.generateAccessors(PropertiesEnhancer.java:64)
at com.typesafe.play.sbt.enhancer.PlayEnhancer$$anonfun$scopedSettings$3.apply(PlayEnhancer.scala:43)
at com.typesafe.play.sbt.enhancer.PlayEnhancer$$anonfun$scopedSettings$3.apply(PlayEnhancer.scala:43)
at scala.Function2$$anonfun$curried$1$$anonfun$apply$1.apply(Function2.scala:45)
at scala.collection.TraversableLike$$anonfun$filter$1.apply(TraversableLike.scala:264)
at scala.collection.mutable.ResizableArray$class.foreach(ResizableArray.scala:59)
at scala.collection.mutable.ArrayBuffer.foreach(ArrayBuffer.scala:47)
at scala.collection.TraversableLike$class.filter(TraversableLike.scala:263)
at scala.collection.AbstractTraversable.filter(Traversable.scala:105)
at com.typesafe.play.sbt.enhancer.PlayEnhancer$$anonfun$bytecodeEnhance$1$$anonfun$apply$2.apply(PlayEnhancer.scala:71)
at com.typesafe.play.sbt.enhancer.PlayEnhancer$$anonfun$bytecodeEnhance$1$$anonfun$apply$2.apply(PlayEnhancer.scala:48)
at com.typesafe.play.sbt.enhancer.PlayEnhancer$$anonfun$scopedSettings$2.apply(PlayEnhancer.scala:38)
at com.typesafe.play.sbt.enhancer.PlayEnhancer$$anonfun$scopedSettings$2.apply(PlayEnhancer.scala:34)
at scala.Function1$$anonfun$compose$1.apply(Function1.scala:47)
at sbt.$tilde$greater$$anonfun$$u2219$1.apply(TypeFunctions.scala:40)
at sbt.std.Transform$$anon$4.work(System.scala:63)
at sbt.Execute$$anonfun$submit$1$$anonfun$apply$1.apply(Execute.scala:228)
at sbt.Execute$$anonfun$submit$1$$anonfun$apply$1.apply(Execute.scala:228)
at sbt.ErrorHandling$.wideConvert(ErrorHandling.scala:17)
at sbt.Execute.work(Execute.scala:237)
at sbt.Execute$$anonfun$submit$1.apply(Execute.scala:228)
at sbt.Execute$$anonfun$submit$1.apply(Execute.scala:228)
at sbt.ConcurrentRestrictions$$anon$4$$anonfun$1.apply(ConcurrentRestrictions.scala:159)
at sbt.CompletionService$$anon$2.call(CompletionService.scala:28)
at java.util.concurrent.FutureTask.run(FutureTask.java:266)
at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:511)
at java.util.concurrent.FutureTask.run(FutureTask.java:266)
at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617)
at java.lang.Thread.run(Thread.java:745)
[error] (compile:manipulateBytecode) java.io.EOFException


Marcos Pereira

unread,
Feb 6, 2017, 8:21:45 PM2/6/17
to play-fr...@googlegroups.com
Hey Peter,

Which version of Play are using exactly? Are you using play-enhancer plugin and play-ebean? How is your build.sbt file and also your project/plugins.sbt file?

Best.

--
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/97504ca2-541c-4ffb-b0fe-46ed8a1715e9%40googlegroups.com.

For more options, visit https://groups.google.com/d/optout.



--
Marcos Pereira
Software Engineer, Lightbend.com

Peter

unread,
Feb 6, 2017, 10:27:06 PM2/6/17
to Play Framework
Hello Marcos,

Which version of Play are using exactly?
I am using version 2.5.8

 Are you using play-enhancer plugin and play-ebean?
Yes I am using:
addSbtPlugin("com.typesafe.sbt" % "sbt-play-enhancer" % "1.1.0")
and
addSbtPlugin("com.typesafe.sbt" % "sbt-play-ebean" %  "3.1.0")

 How is your build.sbt file and also your project/plugins.sbt file? 

build.sbt:

lazy val root = (project in file(".")).enablePlugins(PlayEbean,PlayJava,SbtTwirl)
scalaVersion
:= "2.11.8"
TwirlKeys.constructorAnnotations += "@javax.inject.Inject()"
libraryDependencies
++= Seq(
 javaJdbc
,
 cache
,
 javaWs
,
evolutions
,
filters
,
 
"mysql" % "mysql-connector-java" % "5.1.36",
 
"com.adrianhurt" %% "play-bootstrap" % "1.1-P25-B3",
 
"org.webjars" %% "webjars-play" % "2.5.0",
 
"org.webjars" % "bootstrap" % "3.3.7-1",
"org.webjars" % "jquery" % "2.2.3",
 
"org.webjars" % "swagger-ui" % "2.2.8",
 
"com.nappin" %% "play-recaptcha" % "1.5",
 
"com.typesafe.play" %% "play-mailer" % "5.0.0-M1",
 
"org.apache.commons" % "commons-lang3" % "3.4",
 
"commons-validator" % "commons-validator" % "1.5.1",
 
"io.swagger" %% "swagger-play2" % "1.5.3",
 
"org.webjars.bower" % "Hover" % "2.0.2",
 
"org.webjars.bower" % "react-select" % "1.0.0-rc.1"
)
routesGenerator
:= InjectedRoutesGenerator
resolvers
+= Resolver.sonatypeRepo("snapshots")
resolvers
+= Resolver.sonatypeRepo("public")
JsEngineKeys.engineType := JsEngineKeys.EngineType.Node
 
plugins:
resolvers += Resolver.sonatypeRepo("snapshots")
addSbtPlugin
("com.typesafe.play" % "sbt-plugin" % "2.5.8")
addSbtPlugin
("com.typesafe.sbt" % "sbt-twirl" % "1.2.0")
addSbtPlugin
("com.typesafe.sbt" % "sbt-coffeescript" % "1.0.0")
addSbtPlugin
("com.typesafe.sbt" % "sbt-less" % "1.1.0")
addSbtPlugin
("com.typesafe.sbt" % "sbt-jshint" % "1.0.3")
addSbtPlugin
("com.typesafe.sbt" % "sbt-rjs" % "1.0.7")
addSbtPlugin
("com.typesafe.sbt" % "sbt-digest" % "1.1.0")
addSbtPlugin
("com.typesafe.sbt" % "sbt-mocha" % "1.1.0")
addSbtPlugin
("org.irundaia.sbt" % "sbt-sassify" % "1.4.2")
addSbtPlugin
("com.typesafe.sbt" % "sbt-play-enhancer" % "1.1.0")
addSbtPlugin
("com.typesafe.sbt" % "sbt-play-ebean" % "3.1.0")
addSbtPlugin
("com.typesafe.sbteclipse" % "sbteclipse-plugin" % "5.1.0")


I think this is some problem of play-enhancer as this is happening in models but also in form classes which I have separated from model classes. 
I also added setters and getters to one of form classes and then recompiled and random binding problem with this class did not appear until now.
I also tried Invaldiate cache/restart in Intellij and it did not help either.

Peter

unread,
Feb 10, 2017, 7:12:32 AM2/10/17
to Play Framework
BUMP

alex s

unread,
Feb 10, 2017, 7:55:40 AM2/10/17
to Play Framework
Try plain sbt in place of Activator. Don't run or compile anything from Idea, use sbt console instead. I've got the impression you haven't actually tried cleaning generated files either, so delete everything from target and project/target directories.

пятница, 10 февраля 2017 г., 15:12:32 UTC+3 пользователь Peter написал:
BUMP

Daniel Litvak

unread,
Feb 15, 2017, 3:18:59 AM2/15/17
to Play Framework
Alex,

We are running into a similar problem.

We get : [error] (compile:manipulateBytecode) java.io.EOFException

We are using ebean and enhancer. We are on Play 2.5.2.

The problem persists using sbt or intellij to run. We have tried an SBT clean, schema drop/add, reinstall scala plugin, reinstall intellij.

This is happening on Windows 10. We have also run the code on Arch Linux (Manjaro) where we do NOT have this problem. We have copied the project directory from Arch to Windows and the windows computer still fails.

The EOFException eventually goes away and the code "compiles" however, the enhancer seems to have not run on some of the models and calling their children/relationships results in a null pointer.

Do you have any advice?

Thank you!

alex s

unread,
Feb 15, 2017, 10:08:27 AM2/15/17
to Play Framework
среда, 15 февраля 2017 г., 11:18:59 UTC+3 пользователь Daniel Litvak написал:
We get : [error] (compile:manipulateBytecode) java.io.EOFException

You need to post the complete stack trace here.

This is happening on Windows 10. We have also run the code on Arch Linux (Manjaro) where we do NOT have this problem. We have copied the project directory from Arch to Windows and the windows computer still fails.

Try doing the same thing with the debug logging enabled:
$ set logLevel := Level.Debug

Is there any difference between sbt output on linux and windows?

alex s

unread,
Feb 15, 2017, 10:13:07 AM2/15/17
to Play Framework
среда, 15 февраля 2017 г., 18:08:27 UTC+3 пользователь alex s написал:

Is there any difference between sbt output on linux and windows?

Apart from the exception, of course.

Daniel Litvak

unread,
Feb 15, 2017, 10:46:38 AM2/15/17
to Play Framework
I will post the full stack trace when my co-worker gets into the office.

The sbt output is exactly the same aside from the exception ;)

For the log level - are you talking about setting
<logger name="play" level="INFO" />
 to
<logger name="play" level="DEBUG" />
?


Stacktrace coming soon.

Daniel Litvak

unread,
Feb 15, 2017, 11:32:24 AM2/15/17
to Play Framework
Here is the entire stack trace. The GET to / should 404 but should not 500.

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

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

Server started, use Alt+D to stop

java
.lang.IllegalArgumentException: requirement failed: Source file 'C:\Users\chace\Documents\consumer-api\consumer-api\target\scala-2.11\classes\router\Routes$$anonfun$routes$1$$anonfun$applyOrElse$45$$anonfun$apply$45.class' does not exist.
        at scala
.Predef$.require(Predef.scala:233)
        at sbt
.IO$.copyFile(IO.scala:636)
        at sbt
.IO$.move(IO.scala:839)
        at sbt
.inc.ClassfileManager$$anonfun$transactional$1$$anon$2.sbt$inc$ClassfileManager$$anonfun$$anon$$move(ClassfileManager.scala:75)
        at sbt
.inc.ClassfileManager$$anonfun$transactional$1$$anon$2$$anonfun$delete$3.apply(ClassfileManager.scala:52)
        at sbt
.inc.ClassfileManager$$anonfun$transactional$1$$anon$2$$anonfun$delete$3.apply(ClassfileManager.scala:51)
        at scala
.collection.immutable.HashSet$HashSet1.foreach(HashSet.scala:153)
        at scala
.collection.immutable.HashSet$HashTrieSet.foreach(HashSet.scala:306)
        at scala
.collection.immutable.HashSet$HashTrieSet.foreach(HashSet.scala:306)
        at sbt
.inc.ClassfileManager$$anonfun$transactional$1$$anon$2.delete(ClassfileManager.scala:51)
        at sbt
.inc.Incremental$.prune(Incremental.scala:88)
        at sbt
.inc.IncrementalCommon.cycle(IncrementalCommon.scala:29)
        at sbt
.inc.Incremental$$anonfun$1.apply(Incremental.scala:68)
        at sbt
.inc.Incremental$$anonfun$1.apply(Incremental.scala:67)
        at sbt
.inc.Incremental$.manageClassfiles(Incremental.scala:95)
        at sbt
.inc.Incremental$.compile(Incremental.scala:67)
        at sbt
.inc.IncrementalCompile$.apply(Compile.scala:54)
        at sbt
.compiler.IC$.compileInternal(IncrementalCompiler.scala:160)
        at sbt
.compiler.IC$.incrementalCompile(IncrementalCompiler.scala:138)
        at sbt
.Compiler$.compile(Compiler.scala:152)
        at sbt
.Compiler$.compile(Compiler.scala:138)
        at sbt
.Defaults$.sbt$Defaults$$compileIncrementalTaskImpl(Defaults.scala:860)
        at sbt
.Defaults$$anonfun$compileIncrementalTask$1.apply(Defaults.scala:851)
        at sbt
.Defaults$$anonfun$compileIncrementalTask$1.apply(Defaults.scala:849)

        at scala
.Function1$$anonfun$compose$1.apply(Function1.scala:47)
        at sbt
.$tilde$greater$$anonfun$$u2219$1.apply(TypeFunctions.scala:40)
        at sbt
.std.Transform$$anon$4.work(System.scala:63)
        at sbt
.Execute$$anonfun$submit$1$$anonfun$apply$1.apply(Execute.scala:228)
        at sbt
.Execute$$anonfun$submit$1$$anonfun$apply$1.apply(Execute.scala:228)
        at sbt
.ErrorHandling$.wideConvert(ErrorHandling.scala:17)
        at sbt
.Execute.work(Execute.scala:237)
        at sbt
.Execute$$anonfun$submit$1.apply(Execute.scala:228)
        at sbt
.Execute$$anonfun$submit$1.apply(Execute.scala:228)
        at sbt
.ConcurrentRestrictions$$anon$4$$anonfun$1.apply(ConcurrentRestrictions.scala:159)
        at sbt
.CompletionService$$anon$2.call(CompletionService.scala:28)
        at java
.util.concurrent.FutureTask.run(FutureTask.java:266)
        at java
.util.concurrent.Executors$RunnableAdapter.call(Executors.java:511)
        at java
.util.concurrent.FutureTask.run(FutureTask.java:266)
        at java
.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142)
        at java
.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617)
        at java
.lang.Thread.run(Thread.java:745)
[error] (compile:compileIncremental) java.lang.IllegalArgumentException: requirement failed: Source file 'C:\Users\chace\Documents\consumer-api\consumer-api\target\scala-2.11\classes\router\Routes$$anonfun$routes$1$$anonfun$applyOrElse$45$$anonfun$apply$45.class' does not exist.
[info] Compiling 11 Scala sources and 3 Java sources to C:\Users\chace\Documents\consumer-api\consumer-api\target\scala-2.11\classes...

java
.io.EOFException
        at java
.io.DataInputStream.readInt(DataInputStream.java:392)
        at javassist
.bytecode.ClassFile.read(ClassFile.java:777)
        at javassist
.bytecode.ClassFile.<init>(ClassFile.java:124)
        at javassist
.CtClassType.<init>(CtClassType.java:96)
        at javassist
.ClassPool.makeClass(ClassPool.java:728)
        at javassist
.ClassPool.makeClass(ClassPool.java:706)

        at play
.core.enhancers.PropertiesEnhancer.rewriteAccess(PropertiesEnhancer.java:147)
        at com
.typesafe.play.sbt.enhancer.PlayEnhancer$$anonfun$scopedSettings$4.apply(PlayEnhancer.scala:44)
        at com
.typesafe.play.sbt.enhancer.PlayEnhancer$$anonfun$scopedSettings$4.apply(PlayEnhancer.scala:44)

        at scala
.Function2$$anonfun$curried$1$$anonfun$apply$1.apply(Function2.scala:45)
        at scala
.collection.TraversableLike$$anonfun$filter$1.apply(TraversableLike.scala:264)
        at scala
.collection.mutable.ResizableArray$class.foreach(ResizableArray.scala:59)
        at scala
.collection.mutable.ArrayBuffer.foreach(ArrayBuffer.scala:47)
        at scala
.collection.TraversableLike$class.filter(TraversableLike.scala:263)
        at scala
.collection.AbstractTraversable.filter(Traversable.scala:105)
        at com
.typesafe.play.sbt.enhancer.PlayEnhancer$$anonfun$bytecodeEnhance$1$$anonfun$apply$2.apply(PlayEnhancer.scala:71)

        at com
.typesafe.play.sbt.enhancer.PlayEnhancer$$anonfun$bytecodeEnhance$1$$anonfun$apply$2.apply(PlayEnhancer.scala:48)
        at com
.typesafe.play.sbt.enhancer.PlayEnhancer$$anonfun$scopedSettings$2.apply(PlayEnhancer.scala:38)
        at com
.typesafe.play.sbt.enhancer.PlayEnhancer$$anonfun$scopedSettings$2.apply(PlayEnhancer.scala:34)
        at scala
.Function1$$anonfun$compose$1.apply(Function1.scala:47)
        at sbt
.$tilde$greater$$anonfun$$u2219$1.apply(TypeFunctions.scala:40)
        at sbt
.std.Transform$$anon$4.work(System.scala:63)
        at sbt
.Execute$$anonfun$submit$1$$anonfun$apply$1.apply(Execute.scala:228)
        at sbt
.Execute$$anonfun$submit$1$$anonfun$apply$1.apply(Execute.scala:228)
        at sbt
.ErrorHandling$.wideConvert(ErrorHandling.scala:17)
        at sbt
.Execute.work(Execute.scala:237)
        at sbt
.Execute$$anonfun$submit$1.apply(Execute.scala:228)
        at sbt
.Execute$$anonfun$submit$1.apply(Execute.scala:228)
        at sbt
.ConcurrentRestrictions$$anon$4$$anonfun$1.apply(ConcurrentRestrictions.scala:159)
        at sbt
.CompletionService$$anon$2.call(CompletionService.scala:28)
        at java
.util.concurrent.FutureTask.run(FutureTask.java:266)
        at java
.util.concurrent.Executors$RunnableAdapter.call(Executors.java:511)
        at java
.util.concurrent.FutureTask.run(FutureTask.java:266)
        at java
.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142)
        at java
.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617)
        at java
.lang.Thread.run(Thread.java:745)
[error] (compile:manipulateBytecode) java.io.EOFException
[error] application -

! @7344hfm6a - Internal server error, for (GET) [/] ->
 
play
.sbt.PlayExceptions$UnexpectedException: Unexpected exception[EOFException: null]
        at play
.sbt.run.PlayReload$$anonfun$taskFailureHandler$1.apply(PlayReload.scala:51)
        at play
.sbt.run.PlayReload$$anonfun$taskFailureHandler$1.apply(PlayReload.scala:44)
        at scala
.Option.map(Option.scala:145)
        at play
.sbt.run.PlayReload$.taskFailureHandler(PlayReload.scala:44)
        at play
.sbt.run.PlayReload$.compileFailure(PlayReload.scala:40)
        at play
.sbt.run.PlayReload$$anonfun$compile$1.apply(PlayReload.scala:17)
        at play
.sbt.run.PlayReload$$anonfun$compile$1.apply(PlayReload.scala:17)
        at scala
.util.Either$LeftProjection.map(Either.scala:377)
        at play
.sbt.run.PlayReload$.compile(PlayReload.scala:17)
        at play
.sbt.run.PlayRun$$anonfun$playRunTask$1$$anonfun$apply$2$$anonfun$apply$3$$anonfun$2.apply(PlayRun.scala:61)
Caused by: java.io.EOFException: null

        at java
.io.DataInputStream.readInt(DataInputStream.java:392)
        at javassist
.bytecode.ClassFile.read(ClassFile.java:777)
        at javassist
.bytecode.ClassFile.<init>(ClassFile.java:124)
        at javassist
.CtClassType.<init>(CtClassType.java:96)
        at javassist
.ClassPool.makeClass(ClassPool.java:728)
        at javassist
.ClassPool.makeClass(ClassPool.java:706)

        at play
.core.enhancers.PropertiesEnhancer.rewriteAccess(PropertiesEnhancer.java:147)
        at com
.typesafe.play.sbt.enhancer.PlayEnhancer$$anonfun$scopedSettings$4.apply(PlayEnhancer.scala:44)
        at com
.typesafe.play.sbt.enhancer.PlayEnhancer$$anonfun$scopedSettings$4.apply(PlayEnhancer.scala:44)
        at scala
.Function2$$anonfun$curried$1$$anonfun$apply$1.apply(Function2.scala:45)
[success] Compiled in 64s

alex s

unread,
Feb 15, 2017, 2:02:24 PM2/15/17
to Play Framework
That definitely looks like a bug to me. https://github.com/sbt/sbt/issues/1777 maybe?

среда, 15 февраля 2017 г., 19:32:24 UTC+3 пользователь Daniel Litvak написал:

alex s

unread,
Feb 15, 2017, 2:23:42 PM2/15/17
to Play Framework

среда, 15 февраля 2017 г., 22:02:24 UTC+3 пользователь alex s написал:
That definitely looks like a bug to me. https://github.com/sbt/sbt/issues/1777 maybe?
 
Nah, case-insensitivity likely wouldn't cause any problems with autogenerated names like Routes$$anonfun$routes$1$$anonfun$applyOrElse$45$$anonfun$apply$45. Must be something else.

Daniel Litvak

unread,
Feb 15, 2017, 6:54:49 PM2/15/17
to Play Framework
We have run the same code on an Ubuntu VM on the same computer and it runs just fine.

At this point, we are really at a loss.

Will Sargent

unread,
Feb 15, 2017, 7:01:10 PM2/15/17
to play-fr...@googlegroups.com
I've run into problems in the past on Windows where the file name is too long for the filesystem -- in general, it's been awkward at best to compile code on a Windows native system.

Some solutions I've seen have been to run Scala projects inside of Windows Linux Subsystem:


and only export the packaged zip file to Windows...

Or thunk the filesystem with a scalac override:

scalacOptions ++= Seq("-Xmax-classfile-name","78")

--
Will Sargent
Engineer, Lightbend, Inc.


--
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.

Daniel Litvak

unread,
Feb 15, 2017, 7:05:42 PM2/15/17
to Play Framework
Will, thank you for the quick response.

What a strange situation! I take it the file name being too long is one of our files. Is that right?

Can we set that scala config to any reasonable value? Say 128 or even longer?

That line gets thrown into the build.sbt file. Is that correct? We will try this in the am and get back to you.

Again, thank you for the response!


On Wednesday, February 15, 2017 at 6:01:10 PM UTC-6, Will Sargent wrote:
I've run into problems in the past on Windows where the file name is too long for the filesystem -- in general, it's been awkward at best to compile code on a Windows native system.

Some solutions I've seen have been to run Scala projects inside of Windows Linux Subsystem:


and only export the packaged zip file to Windows...

Or thunk the filesystem with a scalac override:

scalacOptions ++= Seq("-Xmax-classfile-name","78")

--
Will Sargent
Engineer, Lightbend, Inc.


On Wed, Feb 15, 2017 at 3:54 PM, Daniel Litvak <djlit...@gmail.com> wrote:
We have run the same code on an Ubuntu VM on the same computer and it runs just fine.

At this point, we are really at a loss.


On Wednesday, February 15, 2017 at 1:23:42 PM UTC-6, alex s wrote:

среда, 15 февраля 2017 г., 22:02:24 UTC+3 пользователь alex s написал:
That definitely looks like a bug to me. https://github.com/sbt/sbt/issues/1777 maybe?
 
Nah, case-insensitivity likely wouldn't cause any problems with autogenerated names like Routes$$anonfun$routes$1$$anonfun$applyOrElse$45$$anonfun$apply$45. Must be something else.

--
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-framewor...@googlegroups.com.

Daniel Litvak

unread,
Feb 16, 2017, 6:49:51 PM2/16/17
to Play Framework
Will,

We tried this morning setting the scalac override but that did not work for us.

We ran the code on an Ubuntu VM all day and later in the day the error began showing again.

Do you have any other ideas? I run the same code on Manjaro as well but do not run into this problem.

alex s

unread,
Feb 16, 2017, 9:34:01 PM2/16/17
to Play Framework
пятница, 17 февраля 2017 г., 2:49:51 UTC+3 пользователь Daniel Litvak написал:
We ran the code on an Ubuntu VM all day and later in the day the error began showing again.
 
I'm not quite sure I understood that sentence properly. Same error on ubuntu vm?

any other ideas?

It would be most helpful if you can prepare a sample application reproducing the problem. Other than that, I'm inclined to suggest tracing file operations (writing, moving and deleting) with https://github.com/btraceio/btrace, just to be sure sbt isn't doing something unexpected, but that might be time consuming.

Martin

unread,
Mar 1, 2017, 12:12:10 AM3/1/17
to Play Framework
I have had same problem with not binding data in forms. I tried cleaning with activator, recompiling , creating new project - which leads after some time again to same problem and anything of that did not help at all.
If I run project directly from activator without Intellij I did not had this issue. The only solution for me was to add getters and setters everywhere manually and I did not had this problem anymore.

Daniel Litvak

unread,
Mar 1, 2017, 9:11:25 PM3/1/17
to Play Framework
Martin, that is interesting. Late today we just found there is a single setter in one of our models. So we have removed it and will test tomorrow if that fixes the problem.
Reply all
Reply to author
Forward
0 new messages