One thing I'll say about play and learning it:
They use some more advanced Scala-isms. If you're learning it the way I learned rails, you'll look at things and think "MAGIC". After you're comfortable with Scala, the API will start to look just like a convenient library of stuff. The
Java api, by extension, tries to be as similar to the scala version. This involves a lot more "actual magic" vs. "good language". Grails is similar, in that Groovy does the heavy lifting to make the usual spring APIs nice and simple.
As far as the future of Play, it's heavily hitting the Asynchronous-style development, trying to simplify that style to the point it's as "easy" as synchronous-style code.
We're using Play 2.1 and Akka in a project I'm working on now. Slinging together some Async calls and feeding them out a socket for HTTP is pretty dang simple. While the Akka-Actor -> Play Enumerator bridge isn't as nice as it could be, it's not too many lines of code to accomplish everything you need.
Having used both Grails and Play, I think I'd pick Play at this point because it gets out of the way of what I need to do *even more* than Grails. Again, I may be biased. However, when I first saw Play I was wholly unexcited. It wasn't until using it in anger, that I learned i liked it.