diff --git a/lib/private/AppFramework/App.php b/lib/private/AppFramework/App.php
index 25708245e26bfe8c98d539628af87f7d45183603..abb779ca979af58510c9d024b7c77c7cb3c2ff3d 100644
--- a/lib/private/AppFramework/App.php
+++ b/lib/private/AppFramework/App.php
@@ -84,9 +84,9 @@ class App {
 	 */
 	public static function main(string $controllerName, string $methodName, DIContainer $container, array $urlParams = null) {
 		if (!is_null($urlParams)) {
-			$container[IRequest::class]->setUrlParameters($urlParams);
+			$container->query(IRequest::class)->setUrlParameters($urlParams);
 		} else if (isset($container['urlParams']) && !is_null($container['urlParams'])) {
-			$container[IRequest::class]->setUrlParameters($container['urlParams']);
+			$container->query(IRequest::class)->setUrlParameters($container['urlParams']);
 		}
 		$appName = $container['AppName'];
 
diff --git a/lib/private/AppFramework/DependencyInjection/DIContainer.php b/lib/private/AppFramework/DependencyInjection/DIContainer.php
index 9acc5bd092ed779b2caeb0a84a256222e82c116a..6991d12da7c56cb02e01d9750ad188b9dcd4f4ce 100644
--- a/lib/private/AppFramework/DependencyInjection/DIContainer.php
+++ b/lib/private/AppFramework/DependencyInjection/DIContainer.php
@@ -47,22 +47,21 @@ use OC\AppFramework\Middleware\Security\SecurityMiddleware;
 use OC\AppFramework\Middleware\SessionMiddleware;
 use OC\AppFramework\Utility\SimpleContainer;
 use OC\Core\Middleware\TwoFactorMiddleware;
-use OC\RichObjectStrings\Validator;
 use OC\ServerContainer;
 use OCP\AppFramework\Http\IOutput;
 use OCP\AppFramework\IAppContainer;
 use OCP\AppFramework\QueryException;
+use OCP\AppFramework\Utility\IControllerMethodReflector;
 use OCP\AppFramework\Utility\ITimeFactory;
 use OCP\Files\Folder;
 use OCP\Files\IAppData;
 use OCP\GlobalScale\IConfig;
 use OCP\IL10N;
 use OCP\ILogger;
+use OCP\IRequest;
 use OCP\IServerContainer;
 use OCP\ISession;
 use OCP\IUserSession;
-use OCP\RichObjectStrings\IValidator;
-use OCP\Encryption\IManager;
 use OCA\WorkflowEngine\Manager;
 
 class DIContainer extends SimpleContainer implements IAppContainer {
@@ -86,6 +85,8 @@ class DIContainer extends SimpleContainer implements IAppContainer {
 		$this['AppName'] = $appName;
 		$this['urlParams'] = $urlParams;
 
+		$this->registerAlias('Request', IRequest::class);
+
 		/** @var \OC\ServerContainer $server */
 		if ($server === null) {
 			$server = \OC::$server;
@@ -185,7 +186,7 @@ class DIContainer extends SimpleContainer implements IAppContainer {
 
 			return new SecurityMiddleware(
 				$c['Request'],
-				$c['ControllerMethodReflector'],
+				$server->query(IControllerMethodReflector::class),
 				$server->getNavigationManager(),
 				$server->getURLGenerator(),
 				$server->getLogger(),
@@ -205,7 +206,7 @@ class DIContainer extends SimpleContainer implements IAppContainer {
 			$server = $app->getServer();
 
 			return new OC\AppFramework\Middleware\Security\PasswordConfirmationMiddleware(
-				$c['ControllerMethodReflector'],
+				$c->query(IControllerMethodReflector::class),
 				$server->getSession(),
 				$server->getUserSession(),
 				$server->query(ITimeFactory::class)
@@ -217,7 +218,7 @@ class DIContainer extends SimpleContainer implements IAppContainer {
 			$server = $app->getServer();
 
 			return new OC\AppFramework\Middleware\Security\BruteForceMiddleware(
-				$c['ControllerMethodReflector'],
+				$c->query(IControllerMethodReflector::class),
 				$server->getBruteForceThrottler(),
 				$server->getRequest()
 			);
@@ -230,7 +231,7 @@ class DIContainer extends SimpleContainer implements IAppContainer {
 			return new RateLimitingMiddleware(
 				$server->getRequest(),
 				$server->getUserSession(),
-				$c['ControllerMethodReflector'],
+				$c->query(IControllerMethodReflector::class),
 				$c->query(OC\Security\RateLimiting\Limiter::class)
 			);
 		});
@@ -238,7 +239,7 @@ class DIContainer extends SimpleContainer implements IAppContainer {
 		$this->registerService('CORSMiddleware', function($c) {
 			return new CORSMiddleware(
 				$c['Request'],
-				$c['ControllerMethodReflector'],
+				$c->query(IControllerMethodReflector::class),
 				$c->query(IUserSession::class),
 				$c->getServer()->getBruteForceThrottler()
 			);
@@ -247,7 +248,7 @@ class DIContainer extends SimpleContainer implements IAppContainer {
 		$this->registerService('SessionMiddleware', function($c) use ($app) {
 			return new SessionMiddleware(
 				$c['Request'],
-				$c['ControllerMethodReflector'],
+				$c->query(IControllerMethodReflector::class),
 				$app->getServer()->getSession()
 			);
 		});
@@ -257,7 +258,7 @@ class DIContainer extends SimpleContainer implements IAppContainer {
 			$userSession = $app->getServer()->getUserSession();
 			$session = $app->getServer()->getSession();
 			$urlGenerator = $app->getServer()->getURLGenerator();
-			$reflector = $c['ControllerMethodReflector'];
+			$reflector = $c->query(IControllerMethodReflector::class);
 			$request = $app->getServer()->getRequest();
 			return new TwoFactorMiddleware($twoFactorManager, $userSession, $session, $urlGenerator, $reflector, $request);
 		});
@@ -271,7 +272,7 @@ class DIContainer extends SimpleContainer implements IAppContainer {
 		$this->registerService(OC\AppFramework\Middleware\Security\SameSiteCookieMiddleware::class, function (SimpleContainer $c) {
 			return new OC\AppFramework\Middleware\Security\SameSiteCookieMiddleware(
 				$c['Request'],
-				$c['ControllerMethodReflector']
+				$c->query(IControllerMethodReflector::class)
 			);
 		});
 
diff --git a/lib/private/AppFramework/Utility/SimpleContainer.php b/lib/private/AppFramework/Utility/SimpleContainer.php
index 47a6f95f747c71129696bbe2262a6462efe6702a..6c2844e681bbd685a6c3c3438f993614c3683803 100644
--- a/lib/private/AppFramework/Utility/SimpleContainer.php
+++ b/lib/private/AppFramework/Utility/SimpleContainer.php
@@ -176,5 +176,4 @@ class SimpleContainer extends Container implements IContainer {
 		}
 		return $name;
 	}
-
 }
diff --git a/tests/lib/AppFramework/AppTest.php b/tests/lib/AppFramework/AppTest.php
index 93b8768e6741d37dc5cc8d8184e63e53634ddc66..b31f442877785fa9b747c9ba8d1463f7ae04addf 100644
--- a/tests/lib/AppFramework/AppTest.php
+++ b/tests/lib/AppFramework/AppTest.php
@@ -25,6 +25,8 @@
 namespace Test\AppFramework;
 
 use OC\AppFramework\App;
+use OC\AppFramework\Http\Dispatcher;
+use OCP\AppFramework\Controller;
 use OCP\AppFramework\Http;
 use OCP\AppFramework\Http\Response;
 
@@ -60,16 +62,9 @@ class AppTest extends \Test\TestCase {
 		parent::setUp();
 
 		$this->container = new \OC\AppFramework\DependencyInjection\DIContainer('test', array());
-		$this->controller = $this->getMockBuilder(
-			'OCP\AppFramework\Controller')
-			->disableOriginalConstructor()
-			->getMock();
-		$this->dispatcher = $this->getMockBuilder(
-			'OC\AppFramework\Http\Dispatcher')
-			->disableOriginalConstructor()
-			->getMock();
-
-		$this->io = $this->getMockBuilder('OCP\\AppFramework\\Http\\IOutput')->getMock();
+		$this->controller = $this->createMock(Controller::class);
+		$this->dispatcher = $this->createMock(Dispatcher::class);
+		$this->io = $this->createMock(Http\IOutput::class);
 
 		$this->headers = array('key' => 'value');
 		$this->output = 'hi';
diff --git a/tests/lib/AppFramework/DependencyInjection/DIContainerTest.php b/tests/lib/AppFramework/DependencyInjection/DIContainerTest.php
index d4581aaaf236bb8c2d94841d159028617d5590df..5f089e96018b4bcb955bd91d3cc679f6fd8c9238 100644
--- a/tests/lib/AppFramework/DependencyInjection/DIContainerTest.php
+++ b/tests/lib/AppFramework/DependencyInjection/DIContainerTest.php
@@ -40,7 +40,6 @@ class DIContainerTest extends \Test\TestCase {
 
 	/** @var DIContainer|\PHPUnit_Framework_MockObject_MockObject */
 	private $container;
-	private $api;
 
 	protected function setUp(){
 		parent::setUp();
@@ -78,12 +77,8 @@ class DIContainerTest extends \Test\TestCase {
 	public function testMiddlewareDispatcherIncludesSecurityMiddleware(){
 		$this->container['Request'] = new Request(
 			['method' => 'GET'],
-			$this->getMockBuilder(ISecureRandom::class)
-				->disableOriginalConstructor()
-				->getMock(),
-			$this->getMockBuilder(IConfig::class)
-				->disableOriginalConstructor()
-				->getMock()
+			$this->createMock(ISecureRandom::class),
+			$this->createMock(IConfig::class)
 		);
 		$security = $this->container['SecurityMiddleware'];
 		$dispatcher = $this->container['MiddlewareDispatcher'];