I'm running Drupal 8.6.1 locally in Acquia Dev Desktop and I'm trying to add Remote Video (oEmbed) assets.
I have left the "Thumbnails location" at the default setting of public://oembed_thumbnails
When I attempt to add my first Remote Video media asset ( https://www.youtube.com/watch?v=anAQ794lsBM ) I get this error message that the thumbnail URI is not valid:
The website encountered an unexpected error. Please try again later.</br></br><em class="placeholder">InvalidArgumentException</em>: The URI 'public://oembed_thumbnails/6OpXFifNwFUlN09VaoQ-jzI3F_Tac971gZsWRAjnEqM.jpg' is invalid. You must use a valid URI scheme. Use base: for a path, e.g., to a Drupal file that needs the base path. Do not use this for internal paths controlled by Drupal. in <em class="placeholder">Drupal\Core\Utility\UnroutedUrlAssembler->assemble()</em> (line <em class="placeholder">65</em> of <em class="placeholder">core\lib\Drupal\Core\Utility\UnroutedUrlAssembler.php</em>). <pre class="backtrace">Drupal\Core\Url->toString() (Line: 180)
Drupal\link\Plugin\Field\FieldFormatter\LinkFormatter->viewElements(Object, 'en') (Line: 80)
Drupal\Core\Field\FormatterBase->view(Object, 'en') (Line: 262)
Drupal\Core\Entity\Entity\EntityViewDisplay->buildMultiple(Array) (Line: 321)
Drupal\Core\Entity\EntityViewBuilder->buildComponents(Array, Array, Array, 'media_library') (Line: 263)
Drupal\Core\Entity\EntityViewBuilder->buildMultiple(Array) (Line: 220)
Drupal\Core\Entity\EntityViewBuilder->build(Array)
call_user_func(Array, Array) (Line: 378)
Drupal\Core\Render\Renderer->doRender(Array, ) (Line: 195)
Drupal\Core\Render\Renderer->render(Array) (Line: 1153)
Drupal\views\Plugin\views\field\FieldPluginBase->advancedRender(Object) (Line: 235)
template_preprocess_views_view_field(Array, 'views_view_field', Array) (Line: 287)
Drupal\Core\Theme\ThemeManager->render('views_view_field', Array) (Line: 437)
Drupal\Core\Render\Renderer->doRender(Array, ) (Line: 195)
Drupal\Core\Render\Renderer->render(Array) (Line: 1743)
Drupal\views\Plugin\views\field\FieldPluginBase->theme(Object) (Line: 761)
Drupal\views\Plugin\views\style\StylePluginBase->elementPreRenderRow(Array)
call_user_func(Array, Array) (Line: 378)
Drupal\Core\Render\Renderer->doRender(Array, ) (Line: 195)
Drupal\Core\Render\Renderer->render(Array) (Line: 709)
Drupal\views\Plugin\views\style\StylePluginBase->renderFields(Array) (Line: 576)
Drupal\views\Plugin\views\style\StylePluginBase->renderGrouping(Array, Array, 1) (Line: 468)
Drupal\views\Plugin\views\style\StylePluginBase->render(Array) (Line: 2111)
Drupal\views\Plugin\views\display\DisplayPluginBase->render() (Line: 131)
Drupal\webprofiler\Views\TraceableViewExecutable->render() (Line: 183)
Drupal\views\Plugin\views\display\Page->execute() (Line: 1630)
Drupal\views\ViewExecutable->executeDisplay('page', Array) (Line: 77)
Drupal\views\Element\View::preRenderViewElement(Array)
call_user_func(Array, Array) (Line: 378)
Drupal\Core\Render\Renderer->doRender(Array, ) (Line: 195)
Drupal\Core\Render\Renderer->render(Array, ) (Line: 226)
Drupal\Core\Render\MainContent\HtmlRenderer->Drupal\Core\Render\MainContent\{closure}() (Line: 582)
Drupal\Core\Render\Renderer->executeInRenderContext(Object, Object) (Line: 227)
Drupal\Core\Render\MainContent\HtmlRenderer->prepare(Array, Object, Object) (Line: 117)
Drupal\Core\Render\MainContent\HtmlRenderer->renderResponse(Array, Object, Object) (Line: 90)
Drupal\Core\EventSubscriber\MainContentViewSubscriber->onViewRenderArray(Object, 'kernel.view', Object) (Line: 76)
Drupal\webprofiler\EventDispatcher\TraceableEventDispatcher->dispatch('kernel.view', Object) (Line: 156)
Symfony\Component\HttpKernel\HttpKernel->handleRaw(Object, 1) (Line: 68)
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: 38)
Drupal\webprofiler\StackMiddleware\WebprofilerMiddleware->handle(Object, 1, 1) (Line: 52)
Drupal\Core\StackMiddleware\NegotiationMiddleware->handle(Object, 1, 1) (Line: 23)
Stack\StackedHttpKernel->handle(Object, 1, 1) (Line: 665)
Drupal\Core\DrupalKernel->handle(Object) (Line: 19)
</pre>However the folder C:\Users\Nick\Sites\devdesktop\drupal\sites\drupal.dd\files\oembed_thumbnails does get created and an appropriate thumbnail named 6OpXFifNwFUlN09VaoQ-jzI3F_Tac971gZsWRAjnEqM.jpg is placed within it.
I am not sure whether this is a bug or I am using an inappropriate thumbnails location. I tried a few different options but no success. What thumbnails location should I be using in a local Dev Desktop environment?
Comments
Comment #2
nick hope commentedI discovered that this issue only happens when I map the Local URI of the thumbnail to a field in the FIELD MAPPING section of Media Type edit page. If I leave it as "- Skip field -" then I don't get the problem.
I have tried making the field type (of the field that I map it to) both a Link and a Text (plain), but same problem with either.
I have tried with both YouTube and Vimeo remote video and get the same problem.
So I suppose the issue could be defined as "In a remote video media type, cannot map the 'local URI of the thumbnail' to a field".
Comment #3
phenaproximaComment #10
acbramley commentedThis seems like a potentially outdated or 1 off issue given the age and lack of comments.
I'm going to go with my gut and close as outdated but please feel free to reopen the issue if needed with steps to reproduce from a fresh drupal install