isobar-nz/silverstripe-persistentgridfield

Error: Call to a member function setValue() on null

Closed this issue · 1 comments

xini commented

This happens from time to time on multiple installations of mine when editing stuff in the CMS. I'm using SS 4.8.

After clearing all cookies and site data it works again.

Can anyone confirm this issue?

[Emergency] Uncaught Error: Call to a member function setValue() on null
POST /admin/pages/edit/EditForm/1637/
Line 207 in /srv/www/[redacted]/releases/20210723080234/vendor/littlegiant/silverstripe-persistentgridfield/src/PersistentGridField.php
Source
198     /**
199      * @param array $properties
200      * @return DBHTMLText
201      */
202     public function FieldHolder($properties =
array())
203     {
204         $stateHash = $this->getStateHash();
205 
206         if ($previousState =
Controller::curr()->getRequest()->getSession()->get($stateHash))
{
207            
$this->state->setValue($previousState);
208         }
209 
210         return parent::FieldHolder($properties);
211     }
212 }
Trace
•	LittleGiant\PersistentGridField\PersistentGridField->FieldHolder 
•	call_user_func_array 
ViewableData.php:485
•	SilverStripe\View\ViewableData->obj 
ViewableData.php:547
•	SilverStripe\View\ViewableData->XML_val 
SSViewer_Scope.php:323
•	SilverStripe\View\SSViewer_Scope->__call 
SSViewer_DataPresenter.php:309
•	SilverStripe\View\SSViewer_DataPresenter->__call 
.cachevendor.silverstripe.admin.themes.cms-forms.templates.SilverStripe.Forms.TabSet.ss:75
•	include(/srv/www/[redacted]/releases/20210723080234/silverstripe-cache/[redacted]/.cachevendor.silverstripe.admin.themes.cms-forms.templates.SilverStripe.Forms.TabSet.ss) 
SSViewer.php:602
•	SilverStripe\View\SSViewer->includeGeneratedTemplate 
SSViewer.php:674
•	SilverStripe\View\SSViewer->process 
ViewableData.php:401
•	SilverStripe\View\ViewableData->renderWith 
TabSet.php:136
•	SilverStripe\Forms\TabSet->FieldHolder 
•	call_user_func_array 
ViewableData.php:485
•	SilverStripe\View\ViewableData->obj 
ViewableData.php:547
•	SilverStripe\View\ViewableData->XML_val 
SSViewer_Scope.php:323
•	SilverStripe\View\SSViewer_Scope->__call 
SSViewer_DataPresenter.php:309
•	SilverStripe\View\SSViewer_DataPresenter->__call 
.cachevendor.silverstripe.cms.templates.SilverStripe.CMS.Controllers.Includes.CMSMain_EditForm.ss:58
•	include(/srv/www/[redacted]/releases/20210723080234/silverstripe-cache/[redacted]/.cachevendor.silverstripe.cms.templates.SilverStripe.CMS.Controllers.Includes.CMSMain_EditForm.ss) 
SSViewer.php:602
•	SilverStripe\View\SSViewer->includeGeneratedTemplate 
SSViewer.php:674
•	SilverStripe\View\SSViewer->process 
ViewableData.php:401
•	SilverStripe\View\ViewableData->renderWith 
Form.php:1603
•	SilverStripe\Forms\Form->forTemplate 
LeftAndMain.php:982
•	SilverStripe\Admin\LeftAndMain->SilverStripe\Admin\{closure} 
•	call_user_func 
PjaxResponseNegotiator.php:99
•	SilverStripe\Control\PjaxResponseNegotiator->respond 
CMSMain.php:1814
•	SilverStripe\CMS\Controllers\CMSMain->save 
CMSMain.php:2017
•	SilverStripe\CMS\Controllers\CMSMain->publish 
FormRequestHandler.php:530
•	SilverStripe\Forms\FormRequestHandler->invokeFormHandler 
FormRequestHandler.php:231
•	SilverStripe\Forms\FormRequestHandler->httpSubmission 
RequestHandler.php:323
•	SilverStripe\Control\RequestHandler->handleAction 
RequestHandler.php:202
•	SilverStripe\Control\RequestHandler->handleRequest 
RequestHandler.php:226
•	SilverStripe\Control\RequestHandler->handleRequest 
Controller.php:212
•	SilverStripe\Control\Controller->handleRequest 
LeftAndMain.php:766
•	SilverStripe\Admin\LeftAndMain->handleRequest 
AdminRootController.php:123
•	SilverStripe\Admin\AdminRootController->handleRequest 
Director.php:360
•	SilverStripe\Control\Director->SilverStripe\Control\{closure} 
VersionedHTTPMiddleware.php:41
•	SilverStripe\Versioned\VersionedHTTPMiddleware->process 
HTTPMiddlewareAware.php:62
•	SilverStripe\Control\Director->SilverStripe\Control\Middleware\{closure} 
MinifyHTMLMiddleware.php:22
•	Innoweb\MinifyHTML\Middleware\MinifyHTMLMiddleware->process 
HTTPMiddlewareAware.php:62
•	SilverStripe\Control\Director->SilverStripe\Control\Middleware\{closure} 
EmailObfuscatorMiddleware.php:28
•	Innoweb\EmailObfuscator\Middleware\EmailObfuscatorMiddleware->process 
HTTPMiddlewareAware.php:62
•	SilverStripe\Control\Director->SilverStripe\Control\Middleware\{closure} 
ConfirmationMiddleware.php:259
•	SilverStripe\Control\Middleware\ConfirmationMiddleware->process 
HTTPMiddlewareAware.php:62
•	SilverStripe\Control\Director->SilverStripe\Control\Middleware\{closure} 
ConfirmationMiddleware.php:259
•	SilverStripe\Control\Middleware\ConfirmationMiddleware->process 
HTTPMiddlewareAware.php:62
•	SilverStripe\Control\Director->SilverStripe\Control\Middleware\{closure} 
PasswordExpirationMiddleware.php:84
•	SilverStripe\Security\PasswordExpirationMiddleware->process 
HTTPMiddlewareAware.php:62
•	SilverStripe\Control\Director->SilverStripe\Control\Middleware\{closure} 
BasicAuthMiddleware.php:68
•	SilverStripe\Security\BasicAuthMiddleware->process 
HTTPMiddlewareAware.php:62
•	SilverStripe\Control\Director->SilverStripe\Control\Middleware\{closure} 
AuthenticationMiddleware.php:61
•	SilverStripe\Security\AuthenticationMiddleware->process 
HTTPMiddlewareAware.php:62
•	SilverStripe\Control\Director->SilverStripe\Control\Middleware\{closure} 
CanonicalURLMiddleware.php:190
•	SilverStripe\Control\Middleware\CanonicalURLMiddleware->process 
HTTPMiddlewareAware.php:62
•	SilverStripe\Control\Director->SilverStripe\Control\Middleware\{closure} 
HTTPCacheControlMiddleware.php:42
•	SilverStripe\Control\Middleware\HTTPCacheControlMiddleware->process 
HTTPMiddlewareAware.php:62
•	SilverStripe\Control\Director->SilverStripe\Control\Middleware\{closure} 
ChangeDetectionMiddleware.php:28
•	SilverStripe\Control\Middleware\ChangeDetectionMiddleware->process 
HTTPMiddlewareAware.php:62
•	SilverStripe\Control\Director->SilverStripe\Control\Middleware\{closure} 
FlushMiddleware.php:27
•	SilverStripe\Control\Middleware\FlushMiddleware->process 
HTTPMiddlewareAware.php:62
•	SilverStripe\Control\Director->SilverStripe\Control\Middleware\{closure} 
RequestProcessor.php:66
•	SilverStripe\Control\RequestProcessor->process 
HTTPMiddlewareAware.php:62
•	SilverStripe\Control\Director->SilverStripe\Control\Middleware\{closure} 
SessionMiddleware.php:20
•	SilverStripe\Control\Middleware\SessionMiddleware->process 
HTTPMiddlewareAware.php:62
•	SilverStripe\Control\Director->SilverStripe\Control\Middleware\{closure} 
AllowedHostsMiddleware.php:60
•	SilverStripe\Control\Middleware\AllowedHostsMiddleware->process 
HTTPMiddlewareAware.php:62
•	SilverStripe\Control\Director->SilverStripe\Control\Middleware\{closure} 
TrustedProxyMiddleware.php:176
•	SilverStripe\Control\Middleware\TrustedProxyMiddleware->process 
HTTPMiddlewareAware.php:62
•	SilverStripe\Control\Director->SilverStripe\Control\Middleware\{closure} 
HTTPMiddlewareAware.php:65
•	SilverStripe\Control\Director->callMiddleware 
Director.php:369
•	SilverStripe\Control\Director->handleRequest 
HTTPApplication.php:117
•	SilverStripe\Control\HTTPApplication::SilverStripe\Control\{closure} 
•	call_user_func 
HTTPApplication.php:136
•	SilverStripe\Control\HTTPApplication->SilverStripe\Control\{closure} 
•	call_user_func 
ErrorControlChainMiddleware.php:67
•	SilverStripe\Core\Startup\ErrorControlChainMiddleware->process 
HTTPMiddlewareAware.php:62
•	SilverStripe\Control\HTTPApplication->SilverStripe\Control\Middleware\{closure} 
HTTPMiddlewareAware.php:65
•	SilverStripe\Control\HTTPApplication->callMiddleware 
HTTPApplication.php:137
•	SilverStripe\Control\HTTPApplication->execute 
HTTPApplication.php:116
•	SilverStripe\Control\HTTPApplication->handle 
index.php:26

xini commented

fixed in #8