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: ""
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..
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)
java.io.EOFException
--
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.
Hello Marcos,
addSbtPlugin("com.typesafe.sbt" % "sbt-play-enhancer" % "1.1.0")
addSbtPlugin("com.typesafe.sbt" % "sbt-play-ebean" % "3.1.0")
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
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.
BUMP
We get : [error] (compile:manipulateBytecode) java.io.EOFException
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.
$ set logLevel := Level.Debug
Is there any difference between sbt output on linux and windows?
<logger name="play" level="INFO" />
<logger name="play" level="DEBUG" />
--- (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
That definitely looks like a bug to me. https://github.com/sbt/sbt/issues/1777 maybe?
scalacOptions ++= Seq("-Xmax-classfile-name","78")
--
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/c5e5b73a-5856-4613-a9d1-f036b3a0ac76%40googlegroups.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")
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.
We ran the code on an Ubuntu VM all day and later in the day the error began showing again.
any other ideas?