[FLOW3-general] Issue while setting up

Robert Lemke robert at typo3.org
Mon Dec 14 17:57:20 CET 2009


Hi Matt,

what happens if you remove the exception in the F3\FLOW3\Package\Manager::isPackageAvailable() method?
Try this:

	public function isPackageAvailable($packageKey) {
		return (isset($this->packages[$packageKey]));
	}

Cheers,
robert

Am 14.12.2009 um 13:15 schrieb Matt Whipple:

> I'm trying to take FLOW3 out for a spin but end up with the following
> error when trying to visit the site for the first time.  I'm running PHP
> 5.3.1 on a Gentoo Linux (2.6.30-gentoo-r8) computer.  At the moment I'm
> also using lighttpd which (if relevant) I'm guessing might leave me on
> my own but as any insight as to the cause of the problem would be
> appreciated.
> 
> Uncaught Exception in FLOW3
> *#1200402593: The package key must be of type string, NULL given.* (More
> information <http://typo3.org/go/exception/1200402593>)
> 
> InvalidArgumentException thrown in file
> Packages/Framework/FLOW3/Classes/Package/Manager.php in line 140.
> 
> Go to the FORGE issue tracker and report the issue
> <http://forge.typo3.org/projects/package-flow3/issues/new?issue%5Bsubject%5D=InvalidArgumentException+thrown+in+file+Manager.php&issue%5Bdescription%5D=The+package+key+must+be+of+type+string%2C+NULL+given.%0A20+F3%5CFLOW3%5CPackage%5CManager%3A%3AisPackageAvailable%28NULL%29%0A19+F3%5CFLOW3%5CMVC%5CDispatcher%3A%3AresolveController%28F3%5CFLOW3%5CMVC%5CWeb%5CRequest%29%0A18+F3%5CFLOW3%5CMVC%5CDispatcher%3A%3Adispatch%28F3%5CFLOW3%5CMVC%5CWeb%5CRequest%2C+F3%5CFLOW3%5CMVC%5CWeb%5CResponse%29%0A17+F3%5CFLOW3%5CMVC%5CDispatcher_AOPProxy_Development%3A%3Adispatch%28F3%5CFLOW3%5CMVC%5CWeb%5CRequest%2C+F3%5CFLOW3%5CMVC%5CWeb%5CResponse%29%0A16+call_user_func_array%28array%2C+array%29%0A15+F3%5CFLOW3%5CMVC%5CDispatcher_AOPProxy_Development%3A%3AFLOW3_AOP_Proxy_invokeJoinPoint%28F3%5CFLOW3%5CAOP%5CJoinPoint%29%0A14+F3%5CFLOW3%5CAOP%5CAdvice%5CAdviceChain%3A%3Aproceed%28F3%5CFLOW3%5CAOP%5CJoinPoint%29%0A13+F3%5CFLOW3%5CSecurity%5CAspect%5CRequestDispatchingAspect%3A%3AcheckRequestHash
> %28F3%5CFLOW3%5CAOP%5CJoinPoint%29%0A12+F3%5CFLOW3%5CAOP%5CAdvice%5CAroundAdvice%3A%3Ainvoke%28F3%5CFLOW3%5CAOP%5CJoinPoint%29%0A11+F3%5CFLOW3%5CAOP%5CAdvice%5CAdviceChain%3A%3Aproceed%28F3%5CFLOW3%5CAOP%5CJoinPoint%29%0A10+F3%5CFLOW3%5CSecurity%5CAspect%5CRequestDispatchingAspect%3A%3AblockIllegalRequests%28F3%5CFLOW3%5CAOP%5CJoinPoint%29%0A9+F3%5CFLOW3%5CAOP%5CAdvice%5CAroundAdvice%3A%3Ainvoke%28F3%5CFLOW3%5CAOP%5CJoinPoint%29%0A8+F3%5CFLOW3%5CAOP%5CAdvice%5CAdviceChain%3A%3Aproceed%28F3%5CFLOW3%5CAOP%5CJoinPoint%29%0A7+F3%5CFLOW3%5CSecurity%5CAspect%5CRequestDispatchingAspect%3A%3AinitializeSecurity%28F3%5CFLOW3%5CAOP%5CJoinPoint%29%0A6+F3%5CFLOW3%5CAOP%5CAdvice%5CAroundAdvice%3A%3Ainvoke%28F3%5CFLOW3%5CAOP%5CJoinPoint%29%0A5+F3%5CFLOW3%5CAOP%5CAdvice%5CAdviceChain%3A%3Aproceed%28F3%5CFLOW3%5CAOP%5CJoinPoint%29%0A4+F3%5CFLOW3%5CMVC%5CDispatcher_AOPProxy_Development%3A%3Adispatch%28F3%5CFLOW3%5CMVC%5CWeb%5CRequest%2C+F3%5CFLOW3%5CMVC%5CWeb%5CResponse%29%0A3+F3%5CFLOW3%5CMV
> C%5CWeb%5CRequestHandler%3A%3AhandleRequest%28%29%0A2+F3%5CFLOW3%5CCore%5CBootstrap%3A%3Arun%28%29%0A1+require%28%22%2Fhome%2Fmwhipple%2Fflow_svn%2FPackages%2FFramework%2FFLOW3%2FScripts%2FFLOW3.php%22%29%0A%0APlease+include+more+helpful+information%21&issue%5Bcategory_id%5D=554&issue%5Bpriority_id%5D=7>
> - *if you think it is a bug!*
> 
> 20 F3\FLOW3\Package\Manager::isPackageAvailable(/NULL/)
> 
> 
> Packages/Framework/FLOW3/Classes/MVC/Dispatcher.php:
> 
> 00111:   $exception = NULL;
> 00112:   $packageKey = $request->getControllerPackageKey();
> 
> 00113:   if (!$this->packageManager->isPackageAvailable($packageKey)) {
> 
> 00114:    $exception = new \F3\FLOW3\MVC\Controller\Exception\InvalidPackage($request, 'package "' . $packageKey . '" does not exist');
> 00115:   } elseif (!$this->packageManager->isPackageActive($packageKey)) {
> 
> 
> 19 F3\FLOW3\MVC\Dispatcher::resolveController(/F3\FLOW3\MVC\Web\Request/)
> 
> 
> Packages/Framework/FLOW3/Classes/MVC/Dispatcher.php:
> 
> 00092:   while (!$request->isDispatched()) {
> 00093:    if ($dispatchLoopCount++ > 99) throw new \F3\FLOW3\MVC\Exception\InfiniteLoop('Could not ultimately dispatch the request after '  . $dispatchLoopCount . ' iterations.', 1217839467);
> 
> 00094:    $controller = $this->resolveController($request);
> 
> 00095:    try {
> 00096:     $controller->processRequest($request, $response);
> 
> 
> 18 F3\FLOW3\MVC\Dispatcher::dispatch(/F3\FLOW3\MVC\Web\Request/, /F3\FLOW3\MVC\Web\Response/)
> 
> 
> 
> 17 F3\FLOW3\MVC\Dispatcher_AOPProxy_Development::dispatch(/F3\FLOW3\MVC\Web\Request/, /F3\FLOW3\MVC\Web\Response/)
> 
> 16 call_user_func_array(/array/, /array/)
> 
> 
> 
> 15 F3\FLOW3\MVC\Dispatcher_AOPProxy_Development::FLOW3_AOP_Proxy_invokeJoinPoint(/F3\FLOW3\AOP\JoinPoint/)
> 
> 
> Packages/Framework/FLOW3/Classes/AOP/Advice/AdviceChain.php:
> 
> 00071:    $result = $this->advices[$this->adviceIndex]->invoke($joinPoint);
> 00072:   } else {
> 
> 00073:    $result = $this->proxy->FLOW3_AOP_Proxy_invokeJoinpoint($joinPoint);
> 
> 00074:   }
> 00075:   return $result;
> 
> 
> 14 F3\FLOW3\AOP\Advice\AdviceChain::proceed(/F3\FLOW3\AOP\JoinPoint/)
> 
> 
> Packages/Framework/FLOW3/Classes/Security/Aspect/RequestDispatchingAspect.php:
> 
> 00103:    $this->requestHashService->verifyRequest($request);
> 00104:   }
> 
> 00105:   return $joinPoint->getAdviceChain()->proceed($joinPoint);
> 
> 00106:  }
> 00107: 
> 
> 
> 13 F3\FLOW3\Security\Aspect\RequestDispatchingAspect::checkRequestHash(/F3\FLOW3\AOP\JoinPoint/)
> 
> 
> Packages/Framework/FLOW3/Classes/AOP/Advice/AroundAdvice.php:
> 
> 00072:   $adviceObject = $this->objectManager->getObject($this->aspectObjectName);
> 00073:   $methodName = $this->adviceMethodName;
> 
> 00074:   return $adviceObject->$methodName($joinPoint);
> 
> 00075:  }
> 00076: 
> 
> 
> 12 F3\FLOW3\AOP\Advice\AroundAdvice::invoke(/F3\FLOW3\AOP\JoinPoint/)
> 
> 
> Packages/Framework/FLOW3/Classes/AOP/Advice/AdviceChain.php:
> 
> 00069:   $this->adviceIndex++;
> 00070:   if ($this->adviceIndex < count($this->advices)) {
> 
> 00071:    $result = $this->advices[$this->adviceIndex]->invoke($joinPoint);
> 
> 00072:   } else {
> 00073:    $result = $this->proxy->FLOW3_AOP_Proxy_invokeJoinpoint($joinPoint);
> 
> 
> 11 F3\FLOW3\AOP\Advice\AdviceChain::proceed(/F3\FLOW3\AOP\JoinPoint/)
> 
> 
> Packages/Framework/FLOW3/Classes/Security/Aspect/RequestDispatchingAspect.php:
> 
> 00087:   $request = $joinPoint->getMethodArgument('request');
> 00088:   $this->firewall->blockIllegalRequests($request);
> 
> 00089:   return $joinPoint->getAdviceChain()->proceed($joinPoint);
> 
> 00090:  }
> 00091: 
> 
> 
> 10 F3\FLOW3\Security\Aspect\RequestDispatchingAspect::blockIllegalRequests(/F3\FLOW3\AOP\JoinPoint/)
> 
> 
> Packages/Framework/FLOW3/Classes/AOP/Advice/AroundAdvice.php:
> 
> 00072:   $adviceObject = $this->objectManager->getObject($this->aspectObjectName);
> 00073:   $methodName = $this->adviceMethodName;
> 
> 00074:   return $adviceObject->$methodName($joinPoint);
> 
> 00075:  }
> 00076: 
> 
> 
> 9 F3\FLOW3\AOP\Advice\AroundAdvice::invoke(/F3\FLOW3\AOP\JoinPoint/)
> 
> 
> Packages/Framework/FLOW3/Classes/AOP/Advice/AdviceChain.php:
> 
> 00069:   $this->adviceIndex++;
> 00070:   if ($this->adviceIndex < count($this->advices)) {
> 
> 00071:    $result = $this->advices[$this->adviceIndex]->invoke($joinPoint);
> 
> 00072:   } else {
> 00073:    $result = $this->proxy->FLOW3_AOP_Proxy_invokeJoinpoint($joinPoint);
> 
> 
> 8 F3\FLOW3\AOP\Advice\AdviceChain::proceed(/F3\FLOW3\AOP\JoinPoint/)
> 
> 
> Packages/Framework/FLOW3/Classes/Security/Aspect/RequestDispatchingAspect.php:
> 
> 00072:   $request = $joinPoint->getMethodArgument('request');
> 00073:   $this->securityContextHolder->initializeContext($request);
> 
> 00074:   return $joinPoint->getAdviceChain()->proceed($joinPoint);
> 
> 00075:  }
> 00076: 
> 
> 
> 7 F3\FLOW3\Security\Aspect\RequestDispatchingAspect::initializeSecurity(/F3\FLOW3\AOP\JoinPoint/)
> 
> 
> Packages/Framework/FLOW3/Classes/AOP/Advice/AroundAdvice.php:
> 
> 00072:   $adviceObject = $this->objectManager->getObject($this->aspectObjectName);
> 00073:   $methodName = $this->adviceMethodName;
> 
> 00074:   return $adviceObject->$methodName($joinPoint);
> 
> 00075:  }
> 00076: 
> 
> 
> 6 F3\FLOW3\AOP\Advice\AroundAdvice::invoke(/F3\FLOW3\AOP\JoinPoint/)
> 
> 
> Packages/Framework/FLOW3/Classes/AOP/Advice/AdviceChain.php:
> 
> 00069:   $this->adviceIndex++;
> 00070:   if ($this->adviceIndex < count($this->advices)) {
> 
> 00071:    $result = $this->advices[$this->adviceIndex]->invoke($joinPoint);
> 
> 00072:   } else {
> 00073:    $result = $this->proxy->FLOW3_AOP_Proxy_invokeJoinpoint($joinPoint);
> 
> 
> 5 F3\FLOW3\AOP\Advice\AdviceChain::proceed(/F3\FLOW3\AOP\JoinPoint/)
> 
> 
> 
> 4 F3\FLOW3\MVC\Dispatcher_AOPProxy_Development::dispatch(/F3\FLOW3\MVC\Web\Request/, /F3\FLOW3\MVC\Web\Response/)
> 
> 
> Packages/Framework/FLOW3/Classes/MVC/Web/RequestHandler.php:
> 
> 00081:   $request = $this->requestBuilder->build();
> 00082:   $response = $this->objectFactory->create('F3\FLOW3\MVC\Web\Response');
> 
> 00083:   $this->dispatcher->dispatch($request, $response);
> 
> 00084:   $response->send();
> 00085:  }
> 
> 
> 3 F3\FLOW3\MVC\Web\RequestHandler::handleRequest()
> 
> 
> Packages/Framework/FLOW3/Classes/Core/Bootstrap.php:
> 
> 00611:    $requestHandlerResolver = $this->objectManager->getObject('F3\FLOW3\MVC\RequestHandlerResolver');
> 00612:    $requestHandler = $requestHandlerResolver->resolveRequestHandler();
> 
> 00613:    $requestHandler->handleRequest();
> 
> 00614: 
> 00615:    if ($this->settings['persistence']['enable'] === TRUE) {
> 
> 
> 2 F3\FLOW3\Core\Bootstrap::run()
> 
> 
> Packages/Framework/FLOW3/Scripts/FLOW3.php:
> 
> 00039: $flow3 = new $className('Development');
> 00040: $flow3->initialize();
> 
> 00041: $flow3->run();
> 
> 00042: 
> 00043: ?>
> 
> 
> 1 require("/home/mwhipple/flow_svn/Packages/Framework/FLOW3/Scripts/FLOW3.php")
> 
> 
> /home/mwhipple/flow_svn/Web/index.php:
> 
> 00022:  *                                                                        */
> 00023: 
> 
> 00024: require((isset($_SERVER['FLOW3_ROOTPATH']) ? $_SERVER['FLOW3_ROOTPATH'] : __DIR__ . '/../') . 'Packages/Framework/FLOW3/Scripts/FLOW3.php');
> 
> 00025: 
> 00026: ?>
> 
> 
> 
> 
> 
> 
> _______________________________________________
> FLOW3-general mailing list
> FLOW3-general at lists.typo3.org
> http://lists.typo3.org/cgi-bin/mailman/listinfo/flow3-general



More information about the FLOW3-general mailing list