Hi,
Firstly: Thank you for the plugin - it's great!
Repeatable: Always
Steps to repeat:
1. Install page_manager and page_manager_ui
2. Setup a page
3. Set the path to "/"
4. Visit /admin/structure/page_manager directly.
5. System error if debugging is not turned on.
Modules enabled:
- page_manager
- page_manager_ui
- panels
Expected Results:
Obviously my take away from this was that path shouldn't be set to "/" , however, maybe a error during the UI step would work best?
Actual Results:
InvalidArgumentException: The user-entered string '' must begin with a '/', '?', or '#'. in Drupal\Core\Url::fromUserInput() (line 204 of core/lib/Drupal/Core/Url.php).
Drupal\page_manager_ui\Entity\PageListBuilder->getPath(Object) (Line: 37)
Drupal\page_manager_ui\Entity\PageListBuilder->buildRow(Object) (Line: 229)
Drupal\Core\Entity\EntityListBuilder->render() (Line: 83)
Drupal\page_manager_ui\Entity\PageListBuilder->render() (Line: 22)
Drupal\Core\Entity\Controller\EntityListController->listing('page')
call_user_func_array(Array, Array) (Line: 123)
Drupal\Core\EventSubscriber\EarlyRenderingControllerWrapperSubscriber->Drupal\Core\EventSubscriber\{closure}() (Line: 574)
Drupal\Core\Render\Renderer->executeInRenderContext(Object, Object) (Line: 124)
Drupal\Core\EventSubscriber\EarlyRenderingControllerWrapperSubscriber->wrapControllerExecutionInRenderContext(Array, Array) (Line: 97)
Drupal\Core\EventSubscriber\EarlyRenderingControllerWrapperSubscriber->Drupal\Core\EventSubscriber\{closure}()
call_user_func_array(Object, Array) (Line: 144)
Symfony\Component\HttpKernel\HttpKernel->handleRaw(Object, 1) (Line: 64)
Symfony\Component\HttpKernel\HttpKernel->handle(Object, 1, 1) (Line: 57)
Drupal\Core\StackMiddleware\Session->handle(Object, 1, 1) (Line: 47)
Drupal\Core\StackMiddleware\KernelPreHandle->handle(Object, 1, 1) (Line: 99)
Drupal\page_cache\StackMiddleware\PageCache->pass(Object, 1, 1) (Line: 78)
Drupal\page_cache\StackMiddleware\PageCache->handle(Object, 1, 1) (Line: 47)
Drupal\Core\StackMiddleware\ReverseProxyMiddleware->handle(Object, 1, 1) (Line: 50)
Drupal\Core\StackMiddleware\NegotiationMiddleware->handle(Object, 1, 1) (Line: 23)
Stack\StackedHttpKernel->handle(Object, 1, 1) (Line: 656)
Drupal\Core\DrupalKernel->handle(Object) (Line: 19)
Once again - thanks for the great work.
| Comment | File | Size | Author |
|---|---|---|---|
| #11 | 2909040-11.patch | 2.22 KB | japerry |
| #10 | 20180413-PageManagerPatch8_Applied.png | 158.78 KB | karolus |
| #8 | 2909040-8.patch | 2.2 KB | japerry |
| #6 | 20180413-PageManagerPatch5_Applied.png | 177.1 KB | karolus |
| #5 | 2909040-5.patch | 1.54 KB | japerry |
Comments
Comment #2
joelpittetI ran into this as well exactly as indicated. Here's a patch that at least doesn't throw an error, but maybe another solution is necessary to prevent people from putting in '/'?
Could be related to #2835742: InvalidArgumentException on using external paths
Comment #3
sd42 commentedI ran into this issue too and can confirm that the patch resolves the white screen, thanks!
Comment #4
karolus commentedI applied the patch in comment #2, and was able to test, and successfully create a page with the path of /. As @joelpittet remarks, though, this presents a UX and site building challenge.
I would propose a dialog/error message that prevents users from adding / as a path.
Comment #5
japerryI think we need to look at this a little differently, you shouldn't be able to make a page manager route be just simply '/'
here is a patch to add that validation.
Comment #6
karolus commentedConfirmed that @japerry's patch in #5 works. This is in core 8.5.1 running PHP 7.0. Here's the output:
Comment #8
japerryFix the if statement.
Comment #10
karolus commentedConfirmed @japerry's patch in #8 is working, with core 8.5 on PHP 7
Test result:

Comment #11
japerrylets try this again!
Comment #12
japerryComment #13
karolus commentedPatch by @japerry in #11 working here.
Comment #15
japerryFixed!
Comment #16
Jordan_fr commentedhappens again after updating the module on page : https://SITENAME.com/admin/structure/page_manager
Comment #17
Jordan_fr commentedComment #18
Jordan_fr commentedmy fault - one page was with no path and implies this error