neos-ui icon indicating copy to clipboard operation
neos-ui copied to clipboard

Trying to access array offset on value of type null in BackendServiceController

Open kdambekalns opened this issue 3 years ago • 0 comments

Description

Exception #1 in line 502 of /…/Neos_Neos_Ui_Controller_BackendServiceController.php: Warning: Trying to access array offset on value of type null in /…/Neos_Neos_Ui_Controller_BackendServiceController.php line 502 - See also: 20220916152228483362.txt

Steps to Reproduce

  1. Have a site with some node in a dimension that is no longer configured
  2. Open a document that is related to those, somehow
  3. See the inspector show only very little data and the content tree misbehaving

Expected behavior

Everything works.

Actual behavior

A 500 is returned for /neos/ui-services/get-additional-node-metadata:

Exception #1 in line 502 of /…/Neos_Neos_Ui_Controller_BackendServiceController.php: Warning: Trying to access array offset on value of type null in /…/Neos_Neos_Ui_Controller_BackendServiceController.php line 502

71 Neos\Flow\Error\ErrorHandler::handleError(2, "Trying to access array offset on value of type null", "/…/Neos_Neos_Ui_Controller_BackendServiceController.php", 502)
70 Neos\Neos\Ui\Controller\BackendServiceController_Original::getCurrentDimensionPresetIdentifiersForNode(Neos\ContentRepository\Domain\Model\Node)
69 Neos\Neos\Ui\Controller\BackendServiceController::getCurrentDimensionPresetIdentifiersForNode(Neos\ContentRepository\Domain\Model\Node)
68 Neos\Neos\Ui\Controller\BackendServiceController::Flow_Aop_Proxy_invokeJoinPoint(Neos\Flow\Aop\JoinPoint)
67 Neos\Flow\Aop\Advice\AdviceChain::proceed(Neos\Flow\Aop\JoinPoint)
66 Neos\Flow\Security\Aspect\PolicyEnforcementAspect_Original::enforcePolicy(Neos\Flow\Aop\JoinPoint)
65 Neos\Flow\Aop\Advice\AroundAdvice::invoke(Neos\Flow\Aop\JoinPoint)
64 Neos\Flow\Aop\Advice\AdviceChain::proceed(Neos\Flow\Aop\JoinPoint)
63 Neos\Neos\Ui\Controller\BackendServiceController::getCurrentDimensionPresetIdentifiersForNode(Neos\ContentRepository\Domain\Model\Node)
62 Neos\Neos\Ui\Controller\BackendServiceController_Original::Neos\Neos\Ui\Controller\{closure}(Neos\ContentRepository\Domain\Model\Node)
61 array_map(Closure, array|2|)
60 Neos\Neos\Ui\Controller\BackendServiceController_Original::getAdditionalNodeMetadataAction(array|47|)
59 Neos\Neos\Ui\Controller\BackendServiceController::getAdditionalNodeMetadataAction(array|47|)
58 Neos\Neos\Ui\Controller\BackendServiceController::Flow_Aop_Proxy_invokeJoinPoint(Neos\Flow\Aop\JoinPoint)
57 Neos\Flow\Aop\Advice\AdviceChain::proceed(Neos\Flow\Aop\JoinPoint)
56 Neos\Flow\Security\Aspect\PolicyEnforcementAspect_Original::enforcePolicy(Neos\Flow\Aop\JoinPoint)
55 Neos\Flow\Aop\Advice\AroundAdvice::invoke(Neos\Flow\Aop\JoinPoint)
54 Neos\Flow\Aop\Advice\AdviceChain::proceed(Neos\Flow\Aop\JoinPoint)
53 Neos\Neos\Ui\Controller\BackendServiceController::getAdditionalNodeMetadataAction(array|47|)
52 Neos\Flow\Mvc\Controller\ActionController_Original::callActionMethod()
51 Neos\Neos\Ui\Controller\BackendServiceController::callActionMethod()
50 Neos\Neos\Ui\Controller\BackendServiceController::Flow_Aop_Proxy_invokeJoinPoint(Neos\Flow\Aop\JoinPoint)
49 Neos\Flow\Aop\Advice\AdviceChain::proceed(Neos\Flow\Aop\JoinPoint)
48 Neos\Flow\Security\Aspect\PolicyEnforcementAspect_Original::enforcePolicy(Neos\Flow\Aop\JoinPoint)
47 Neos\Flow\Aop\Advice\AroundAdvice::invoke(Neos\Flow\Aop\JoinPoint)
46 Neos\Flow\Aop\Advice\AdviceChain::proceed(Neos\Flow\Aop\JoinPoint)
45 Neos\Neos\Ui\Controller\BackendServiceController::callActionMethod()
44 Neos\Flow\Mvc\Controller\ActionController_Original::processRequest(Neos\Flow\Mvc\ActionRequest, Neos\Flow\Mvc\ActionResponse)
43 Neos\Neos\Ui\Controller\BackendServiceController::processRequest(Neos\Flow\Mvc\ActionRequest, Neos\Flow\Mvc\ActionResponse)
42 Neos\Neos\Ui\Controller\BackendServiceController::Flow_Aop_Proxy_invokeJoinPoint(Neos\Flow\Aop\JoinPoint)
41 Neos\Flow\Aop\Advice\AdviceChain::proceed(Neos\Flow\Aop\JoinPoint)
40 Neos\Flow\Security\Aspect\PolicyEnforcementAspect_Original::enforcePolicy(Neos\Flow\Aop\JoinPoint)
39 Neos\Flow\Aop\Advice\AroundAdvice::invoke(Neos\Flow\Aop\JoinPoint)
38 Neos\Flow\Aop\Advice\AdviceChain::proceed(Neos\Flow\Aop\JoinPoint)
37 Neos\Neos\Ui\Controller\BackendServiceController::processRequest(Neos\Flow\Mvc\ActionRequest, Neos\Flow\Mvc\ActionResponse)
36 Neos\Flow\Mvc\Dispatcher_Original::initiateDispatchLoop(Neos\Flow\Mvc\ActionRequest, Neos\Flow\Mvc\ActionResponse)
35 Neos\Flow\Mvc\Dispatcher_Original::dispatch(Neos\Flow\Mvc\ActionRequest, Neos\Flow\Mvc\ActionResponse)
34 Neos\Flow\Mvc\DispatchMiddleware_Original::process(GuzzleHttp\Psr7\ServerRequest, Neos\Flow\Http\Middleware\MiddlewaresChain)
33 Neos\Flow\Http\Middleware\MiddlewaresChain_Original::handle(GuzzleHttp\Psr7\ServerRequest)
32 t3n\Neos\Debug\Http\Middleware\AddServerTimingMiddleware_Original::process(GuzzleHttp\Psr7\ServerRequest, Neos\Flow\Http\Middleware\MiddlewaresChain)
31 Neos\Flow\Http\Middleware\MiddlewaresChain_Original::handle(GuzzleHttp\Psr7\ServerRequest)
30 Neos\Flow\Http\Middleware\SecurityEntryPointMiddleware_Original::process(GuzzleHttp\Psr7\ServerRequest, Neos\Flow\Http\Middleware\MiddlewaresChain)
29 Neos\Flow\Http\Middleware\MiddlewaresChain_Original::handle(GuzzleHttp\Psr7\ServerRequest)
28 t3n\GraphQL\Upload\Http\GraphQLUploadMiddleware_Original::process(GuzzleHttp\Psr7\ServerRequest, Neos\Flow\Http\Middleware\MiddlewaresChain)
27 Neos\Flow\Http\Middleware\MiddlewaresChain_Original::handle(GuzzleHttp\Psr7\ServerRequest)
26 Neos\Flow\Http\Middleware\RequestBodyParsingMiddleware_Original::process(GuzzleHttp\Psr7\ServerRequest, Neos\Flow\Http\Middleware\MiddlewaresChain)
25 Neos\Flow\Http\Middleware\MiddlewaresChain_Original::handle(GuzzleHttp\Psr7\ServerRequest)
24 Neos\Flow\Mvc\FlashMessage\FlashMessageMiddleware_Original::process(GuzzleHttp\Psr7\ServerRequest, Neos\Flow\Http\Middleware\MiddlewaresChain)
23 Neos\Flow\Http\Middleware\MiddlewaresChain_Original::handle(GuzzleHttp\Psr7\ServerRequest)
22 Neos\Flow\Http\Middleware\PoweredByMiddleware_Original::process(GuzzleHttp\Psr7\ServerRequest, Neos\Flow\Http\Middleware\MiddlewaresChain)
21 Neos\Flow\Http\Middleware\MiddlewaresChain_Original::handle(GuzzleHttp\Psr7\ServerRequest)
20 Neos\RedirectHandler\RedirectMiddleware_Original::process(GuzzleHttp\Psr7\ServerRequest, Neos\Flow\Http\Middleware\MiddlewaresChain)
19 Neos\Flow\Http\Middleware\MiddlewaresChain_Original::handle(GuzzleHttp\Psr7\ServerRequest)
18 Neos\Flow\Mvc\Routing\RoutingMiddleware_Original::process(GuzzleHttp\Psr7\ServerRequest, Neos\Flow\Http\Middleware\MiddlewaresChain)
17 Neos\Flow\Http\Middleware\MiddlewaresChain_Original::handle(GuzzleHttp\Psr7\ServerRequest)
16 Neos\Neos\Routing\RequestUriHostMiddleware_Original::process(GuzzleHttp\Psr7\ServerRequest, Neos\Flow\Http\Middleware\MiddlewaresChain)
15 Neos\Flow\Http\Middleware\MiddlewaresChain_Original::handle(GuzzleHttp\Psr7\ServerRequest)
14 t3n\GraphQL\Http\HttpOptionsMiddleware_Original::process(GuzzleHttp\Psr7\ServerRequest, Neos\Flow\Http\Middleware\MiddlewaresChain)
13 Neos\Flow\Http\Middleware\MiddlewaresChain_Original::handle(GuzzleHttp\Psr7\ServerRequest)
12 Neos\FluidAdaptor\Core\Widget\AjaxWidgetMiddleware_Original::process(GuzzleHttp\Psr7\ServerRequest, Neos\Flow\Http\Middleware\MiddlewaresChain)
11 Neos\Flow\Http\Middleware\MiddlewaresChain_Original::handle(GuzzleHttp\Psr7\ServerRequest)
10 Neos\Flow\Http\Middleware\SessionMiddleware_Original::process(GuzzleHttp\Psr7\ServerRequest, Neos\Flow\Http\Middleware\MiddlewaresChain)
9 Neos\Flow\Http\Middleware\MiddlewaresChain_Original::handle(GuzzleHttp\Psr7\ServerRequest)
8 Neos\Flow\Http\Middleware\TrustedProxiesMiddleware_Original::process(GuzzleHttp\Psr7\ServerRequest, Neos\Flow\Http\Middleware\MiddlewaresChain)
7 Neos\Flow\Http\Middleware\MiddlewaresChain_Original::handle(GuzzleHttp\Psr7\ServerRequest)
6 Neos\Flow\Http\Middleware\StandardsComplianceMiddleware_Original::process(GuzzleHttp\Psr7\ServerRequest, Neos\Flow\Http\Middleware\MiddlewaresChain)
5 Neos\Flow\Http\Middleware\MiddlewaresChain_Original::handle(GuzzleHttp\Psr7\ServerRequest)
4 t3n\Neos\Debug\Http\Middleware\MeasureServerTimingMiddleware_Original::process(GuzzleHttp\Psr7\ServerRequest, Neos\Flow\Http\Middleware\MiddlewaresChain)
3 Neos\Flow\Http\Middleware\MiddlewaresChain_Original::handle(GuzzleHttp\Psr7\ServerRequest)
2 Neos\Flow\Http\RequestHandler::handleRequest()
1 Neos\Flow\Core\Bootstrap::run()


HTTP REQUEST:
target: /neos/ui-services/get-additional-node-metadata
Cookie: Neos_Session=…
Sec-Fetch-Site: same-origin
Sec-Fetch-Mode: cors
Sec-Fetch-Dest: empty
Dnt: 1
Origin: https://acme.localbeach.net
Content-Type: application/json
X-Flow-Csrftoken: b437279874ff42e95ef751397ee52374
Referer: https://ramicro.localbeach.net/neos/content?node=%2Fsites%2Facme%2Fnode-glocyht1kggii%2Fnode-gv8piie6xzy7p%2Fnode-4bz6iiaoy7y5f%2Fnode-hrissrkbhgupf%2Fnode-t2wom2nexany2%40user-kdambekalns%3Blanguage%3Dde
Accept-Encoding: gzip, deflate, br
Accept-Language: en,lv;q=0.8,de;q=0.5,de-DE;q=0.3
Accept: */*
User-Agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10.15; rv:104.0) Gecko/20100101 Firefox/104.0
Content-Length: 6711
X-Forwarded-Port: 443
X-Forwarded-Proto: https
X-Forwarded-For: 172.18.0.1
X-Real-Ip: 172.18.0.1
Connection: close
Host: acme.localbeach.net

PHP PROCESS:
Inode: 41759
PID: 20983
UID: 1000
GID: 1000
User: beach

Affected Versions

UI: 7.3+, probably older, too

kdambekalns avatar Sep 16 '22 15:09 kdambekalns