Typo3Fluid FE вылетает с ошибкой 500, если файлы кеша созданы, ошибка: getViewHelper()

Я обновил Typo3 с версии 6.1.x с FED до версии 6.2.17 и следующих расширений typo3Fluid:

  • строитель (1.0.0)
  • содержание жидкости (4.3.3)
  • жидкие страницы (3.3.1)
  • поток (7.2.3)
  • вхс (2.3.3)

Я выполнил множество миграций шаблонов, руководствуясь документами по миграции на веб-сайте Typo3Fluid для FED и Flux но моя система дает сбой, если я помещаю их в расширение поставщика темы.

Я уже пробовал примеры шаблонов только из построителя жидкости, и они, похоже, работают, но если я добавлю один из рефакторинговых шаблонов, возникнут ошибки.

  1. Бэкэнд загружается/отрисовывается очень-очень медленно, но я не возражаю, что в настоящее время
  2. Внешний интерфейс показывает ошибку 500, а в журнале php он говорит мне PHP Fatal error: Call to a member function getViewHelper() on a non-object in C:\xamppnew\htdocs\[Project]\web\typo3temp\Cache\Code\fluid_template\ThemeProvider_Content_action_render_eed9cf578f1072dfb942bb46036bee78de97954d.php on line 17

Я посмотрел на 2 немного дальше, и конкретная строка показывает $self->getViewHelper(..., но $self никогда не определяется в этом обработанном файле. И у меня нет идей на этот счет.

    public function getLayoutName(\TYPO3\CMS\Fluid\Core\Rendering\RenderingContextInterface $renderingContext)
    {
// Rendering ViewHelper FluidTYPO3\Vhs\ViewHelpers\Extension\LoadedViewHelper
        $arguments53 = array();
        $arguments53['extensionName'] = 'fluidcontent_core';
        $arguments53['then'] = 'ContentCore';
        $arguments53['else'] = 'Content';
        $renderChildrenClosure54 = function () use ($renderingContext, $self) {
            return NULL;
        };
        $viewHelper55 = $self->getViewHelper('$viewHelper55', $renderingContext, 'FluidTYPO3\Vhs\ViewHelpers\Extension\LoadedViewHelper');
        $viewHelper55->setArguments($arguments53);
        $viewHelper55->setRenderingContext($renderingContext);
        $viewHelper55->setRenderChildrenClosure($renderChildrenClosure54);
// End of ViewHelper FluidTYPO3\Vhs\ViewHelpers\Extension\LoadedViewHelper

        return $viewHelper55->initializeArgumentsAndRender();
    }

Вот FCE, с которым я пробовал:

<div xmlns:f="http://typo3.org/ns/TYPO3/Fluid/ViewHelpers"
     f:schemaLocation="https://fluidtypo3.org/schemas/fluid-6.2.0.xsd"
     xmlns:flux="http://typo3.org/ns/FluidTYPO3/Flux/ViewHelpers"
     flux:schemaLocation="https://fluidtypo3.org/schemas/flux-7.2.2.xsd">

    <f:layout name="Content"/>

    <f:section name="Configuration">
        <flux:form id="box2col_1-1" label="Container: 2 Spalten 1/1" >
            <flux:grid>
                <flux:grid.row>
                    <flux:grid.column name="col-foo" colPos="0" style="width:50%;"/>
                    <flux:grid.column name="col-bar" colPos="1" style="width:50%;"/>
                </flux:grid.row>
            </flux:grid>
        </flux:form>
    </f:section>

    <f:section name="Preview">
        2 Spalten mit gleicher Breite
        <br/>
        <flux:widget.grid/>
    </f:section>

    <f:section name="Main">
        <div>
            <div class="small-6 large-6 columns">
                <flux:content.render render="1" area="col-foo"/>
            </div>

            <div class="small-6 large-6 columns">
                <flux:content.render render="1" area="col-bar"/>
            </div>
        </div>
    </f:section>
</div>

Надеюсь, у вас есть новая идея или, может быть, решение по этому вопросу, заранее спасибо.

Ваше здоровье

Тобиас


Некоторые новости об этом, я немного изменил FCE в соответствии с документацией по FLUX и FLUID и включил немного другую схему (пример кода выше обновлен).

Теперь бэкэнд намного лучше, и даже внешний интерфейс отображает все после того, как я удаляю папку кеша, но при второй перезагрузке, если файлы кеша были созданы, проблема 2. все еще возникает.

Проблема серверной части рассматривается в этом вопросе: Как узнать, к какой файловой системе apache не может получить доступ в Windows?


person Tobias Hartmann    schedule 25.01.2016    source источник