playframework/Play20 — pull request #1049 by manuelbernhardt (2013-05-03 12:46:30+00:00)
Title: Routes incorrectly compiled when the same method is referenced with different default parameters

Given e.g. two routes

GET /foo controllers.FooController.foo(bar: Boolean = false)
GET /foo2 controllers.FooController.foo(bar: Boolean = false, baz: Boolean = true)

There will be a compilation error on the generated routes file

sbt.PlayExceptions$CompilationException: Compilation error[method foo is defined twice
conflicting symbols both originated in file '/Users/manu/workspace/foo-bar/target/scala-2.10/src_managed/main/routes_reverseRouting.scala']

And indeed there will be two entries for reverse routes created. A workaround is to always specify the same amount of default arguments.