diff -u /dev/null b/core/lib/Drupal/Core/Entity/Controller/EntityListController.php --- /dev/null +++ b/core/lib/Drupal/Core/Entity/Controller/EntityListController.php @@ -0,0 +1,59 @@ +entityManager = $entity_manager; + } + + /** + * {@inheritdoc} + */ + public static function create(ContainerInterface $container) { + return new static( + $container->get('plugin.manager.entity') + ); + } + + /** + * Provides the listing page for any entity type. + * + * @param string $entity_type + * The entity type to render. + * + * @return array + * A render array as expected by drupal_render(). + */ + public function listing($entity_type) { + return $this->entityManager->getListController($entity_type)->render(); + } + +} + diff -u b/core/lib/Drupal/Core/Entity/Enhancer/EntityRouteEnhancer.php b/core/lib/Drupal/Core/Entity/Enhancer/EntityRouteEnhancer.php --- b/core/lib/Drupal/Core/Entity/Enhancer/EntityRouteEnhancer.php +++ b/core/lib/Drupal/Core/Entity/Enhancer/EntityRouteEnhancer.php @@ -42,7 +42,7 @@ $defaults['_controller'] = '\Drupal\Core\Entity\HtmlEntityFormController::content'; } elseif (!empty($defaults['_entity_list'])) { - $defaults['_controller'] = '\Drupal\Core\Entity\HtmlEntityListController::content'; + $defaults['_content'] = '\Drupal\Core\Entity\Controller\EntityListController::listing'; } } return $defaults; reverted: --- b/core/lib/Drupal/Core/Entity/HtmlEntityListController.php +++ /dev/null @@ -1,42 +0,0 @@ -container = $container; - } - - public function content(Request $request, $_entity_list) { - $content = $this->container->get('plugin.manager.entity')->getListController($_entity_list)->render(); - return new Response(drupal_render_page($content)); - } - -}