mkurz Pass request to action methods / Add new Action class that takes a re…
…quest (#8639)

* Pass Java Request to JavaAction.invocation() method

* Pass JRequest as first arg to action method if route prefixed with +

* Introduce NewAction and make it work ;)

* lambada -> lambda

* NewAction -> PlayAction

* Make ctx) final

* Remove PlayAction

* Add

* Update docs from call(ctx) to call(req)

* Special handling for play.mvc.Http.Request route params

* Migration guide

* Deprecate context related methods in JavaHelpers

* isJRequest -> isJavaRequest

* Move constants to Parameter companion object

* Use flatMap

* Update migration guide as suggested by Marcos

* Don't use deprecated method in docs

* Fix formatting

* Injection happening through a public setter

* Test for mixing the old and new Action style

* Copy injected-routes-compilation and migrate controllers from Scala to Java

* Pass Request to actions and test reverse routing, etc.

* Copy aggregate-reverse-routes and migrate controllers from Scala to Java

* Pass Request to actions and test reverse routing

* Docs update like suggested by Marcos

Co-Authored-By: mkurz <>

* Once more updated docs like suggested by Marcos

Co-Authored-By: mkurz <>
Latest commit 45cd639 Oct 23, 2018

Play Framework - The High Velocity Web Framework

Gitter Maven

The Play Framework combines productivity and performance making it easy to build scalable web applications with Java and Scala. Play is developer friendly with a "just hit refresh" workflow and built-in testing support. With Play, applications scale predictably due to a stateless and non-blocking architecture. By being RESTful by default, including assets compilers, JSON & WebSocket support, Play is a perfect fit for modern web & mobile applications.

Learn More


Copyright (C) 2009-2018 Lightbend Inc. (

Licensed under the Apache License, Version 2.0 (the "License"); you may not use this project except in compliance with the License. You may obtain a copy of the License at

Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License.