The default ActorSystem used by the application.
The application's classloader
The HTTP error handler
Dev
, Prod
or Test
The absolute path hosting this application, mainly used by the getFile(path)
helper method
The HTTP request handler
Stop the application.
Stop the application. The returned future will be redeemed when all stop hooks have been run.
Retrieves a file relative to the application root path.
Retrieves a file relative to the application root path. This method returns an Option[File], using None if the file was not found.
Note that it is up to you to manage the files in the application root path in production. By default, there will be nothing available in the application root path.
For example, to retrieve some deployment specific data file:
val myDataFile = application.getExistingFile("data/data.xml")
the relative path of the file to fetch
an existing file
Retrieves a file relative to the application root path.
Retrieves a file relative to the application root path.
Note that it is up to you to manage the files in the application root path in production. By default, there will be nothing available in the application root path.
For example, to retrieve some deployment specific data file:
val myDataFile = application.getFile("data/data.xml")
relative path of the file to fetch
a file instance; it is not guaranteed that the file exists
Get the injector for this application.
Get the injector for this application.
The injector.
Retrieves a plugin of type T
.
Retrieves a plugin of type T
.
For example, to retrieve the DBPlugin instance:
val dbPlugin = application.plugin[DBPlugin].map(_.api).getOrElse(sys.error("problem with the plugin"))
the plugin type
The plugin instance used by this application.
Error
if no plugins of type T are loaded by this application.
Retrieves a plugin of type T
.
Retrieves a plugin of type T
.
For example, retrieving the DBPlugin instance:
val dbPlugin = application.plugin(classOf[DBPlugin])
the plugin type
the plugin’s class
the plugin instance, wrapped in an option, used by this application
Error
if no plugins of type T
are loaded by this application
Scans the application classloader to retrieve a resource.
Scans the application classloader to retrieve a resource.
The conf directory is included on the classpath, so this may be used to look up resources, relative to the conf directory.
For example, to retrieve the conf/logger.xml configuration file:
val maybeConf = application.resource("logger.xml")
the absolute name of the resource (from the classpath root)
the resource URL, if found
Scans the application classloader to retrieve a resource’s contents as a stream.
Scans the application classloader to retrieve a resource’s contents as a stream.
The conf directory is included on the classpath, so this may be used to look up resources, relative to the conf directory.
For example, to retrieve the conf/logger.xml configuration file:
val maybeConf = application.resourceAsStream("logger.xml")
the absolute name of the resource (from the classpath root)
a stream, if found
The router used by this application.
The router used by this application.
(Since version 2.4.0) Either use HttpRequestHandler, or have the router injected
A Play application.
Application creation is handled by the framework engine.
If you need to create an ad-hoc application, for example in case of unit testing, you can easily achieve this using:
This will create an application using the current classloader.