[TYPO3-50-general] Flow3 Blog Example not working

Thomas Fritz fritztho at gmail.com
Fri Dec 5 00:15:52 CET 2008


I checked out the BLog Example for FLOW3 from the SVN Branch. I executed
fixpermsissions.sh.
When i try to open the url http://f3blog/ an exception is thrown:

Uncaught FLOW3 Exception
*#1213012218: Nodetype "flow3:F3_Blog_Domain_Blog" is not registered* (More
information <http://typo3.org/go/exception/1213012218>)

F3::PHPCR::NodeType::NoSuchNodeTypeException thrown in file
TYPO3CR/Classes/NodeType/F3_TYPO3CR_NodeType_NodeTypeManager.php in line 108
.

19 F3::TYPO3CR::NodeType::NodeTypeManager::getNodeType("flow3:F3_Blog_Domain_Blog")


/home/developer/vhosts/flow3blog/www/Packages/TYPO3CR/Classes/F3_TYPO3CR_Node.php:

00956:   */
00957:  public function getPrimaryNodeType() {

00958:   return
$this->session->getWorkspace()->getNodeTypeManager()->getNodeType($this->nodeTypeName);

00959:  }
00960:


18 F3::TYPO3CR::Node::getPrimaryNodeType()


/home/developer/vhosts/flow3blog/www/Packages/TYPO3CR/Classes/FLOW3/Persistence/F3_TYPO3CR_FLOW3_Persistence_DataMapper.php:

00120:   */
00121:  protected function mapSingleNode(F3::PHPCR::NodeInterface $node) {

00122:   $explodedNodeTypeName = explode(':',
$node->getPrimaryNodeType()->getName(), 2);

00123:   $className = str_replace('_', '::', array_pop($explodedNodeTypeName));
00124:   $objectConfiguration =
$this->objectManager->getObjectConfiguration($className);


17 F3::TYPO3CR::FLOW3::Persistence::DataMapper::mapSingleNode(*F3::TYPO3CR::Node*)


/home/developer/vhosts/flow3blog/www/Packages/TYPO3CR/Classes/FLOW3/Persistence/F3_TYPO3CR_FLOW3_Persistence_DataMapper.php:

00106:   $objects = array();
00107:   foreach ($nodes as $node) {

00108:    $objects[] = $this->mapSingleNode($node);

00109:   }
00110:


16 F3::TYPO3CR::FLOW3::Persistence::DataMapper::map(*F3::TYPO3CR::NodeIterator*)


/home/developer/vhosts/flow3blog/www/Packages/TYPO3CR/Classes/FLOW3/Persistence/F3_TYPO3CR_FLOW3_Persistence_Query.php:

00133:   $result = $query->execute();
00134:

00135:   return $this->dataMapper->map($result->getNodes());

00136:  }
00137:


15 F3::TYPO3CR::FLOW3::Persistence::Query::execute()


/home/developer/vhosts/flow3blog/www/Packages/Blog/Classes/Domain/F3_Blog_Domain_BlogRepository.php:

00041:  public function findByName($name) {
00042:   $query = $this->createQuery();

00043:   $blogs = $query->matching($query->equals('name', $name))->execute();

00044:
00045:   return $blogs;


14 F3::Blog::Domain::BlogRepository::findByName("FLOW3")


/home/developer/vhosts/flow3blog/www/Packages/Blog/Classes/RoutePartHandlers/F3_Blog_RoutePartHandlers_PostRoutePartHandler.php:

00052:  public function
injectBlogRepository(F3::Blog::Domain::BlogRepository $blogRepository)
{
00053:   $this->blogRepository = $blogRepository;

00054:   $blogs = $this->blogRepository->findByName('FLOW3');

00055:   if (count($blogs) && $blogs[0] instanceof F3::Blog::Domain::Blog) {
00056:    $this->blog = $blogs[0];


13 F3::Blog::RoutePartHandlers::PostRoutePartHandler::injectBlogRepository(*F3::Blog::Domain::BlogRepository*)


/home/developer/vhosts/flow3blog/www/Packages/FLOW3/Classes/Object/F3_FLOW3_Object_Builder.php:

00300:    $setterMethodName = 'inject' .
F3::PHP6::Functions::ucfirst($propertyName);
00301:    if (method_exists($object, $setterMethodName)) {

00302:     $object->$setterMethodName($propertyValue);

00303:    } else {
00304:     $setterMethodName = 'set' .
F3::PHP6::Functions::ucfirst($propertyName);


12 F3::FLOW3::Object::Builder::injectSetterProperties(*array*,
*F3::Blog::RoutePartHandlers::PostRoutePartHandler*)


/home/developer/vhosts/flow3blog/www/Packages/FLOW3/Classes/Object/F3_FLOW3_Object_Builder.php:

00130:    }
00131:

00132:    $this->injectSetterProperties($setterProperties, $object);

00133:    $this->callLifecycleInitializationMethod($object,
$objectConfiguration);
00134:   } catch (::Exception $exception) {


11 F3::FLOW3::Object::Builder::createObject("F3::Blog::RoutePartHandlers::PostRoutePartHandler",
*F3::FLOW3::Object::Configuration*, *array*)


/home/developer/vhosts/flow3blog/www/Packages/FLOW3/Classes/Object/F3_FLOW3_Object_Factory.php:

00110:   $arguments = array_slice(func_get_args(), 1);
00111:   $overridingConstructorArguments =
$this->getOverridingConstructorArguments($arguments);

00112:   return $this->objectBuilder->createObject($objectName,
$objectConfiguration, $overridingConstructorArguments);

00113:  }
00114:


10 F3::FLOW3::Object::Factory::create("F3::Blog::RoutePartHandlers::PostRoutePartHandler")

9 call_user_func_array(*array*, *array*)


/home/developer/vhosts/flow3blog/www/Packages/FLOW3/Classes/Object/F3_FLOW3_Object_Manager.php:

00204:   switch ($this->objectConfigurations[$objectName]->getScope()) {
00205:    case 'prototype' :

00206:     $object = call_user_func_array(array($this->objectFactory,
'create'), func_get_args());

00207:     break;
00208:    case 'singleton' :


8 F3::FLOW3::Object::Manager::getObject("F3::Blog::RoutePartHandlers::PostRoutePartHandler")


/home/developer/vhosts/flow3blog/www/Packages/FLOW3/Classes/MVC/Web/Routing/F3_FLOW3_MVC_Web_Routing_Route.php:

00449:     case self::ROUTEPART_TYPE_DYNAMIC:
00450:      if (isset($this->routePartHandlers[$routePartName])) {

00451:       $routePart =
$this->objectManager->getObject($this->routePartHandlers[$routePartName]);

00452:       if (!$routePart instanceof
F3::FLOW3::MVC::Web::Routing::DynamicRoutePart) {
00453:        throw new
F3::FLOW3::MVC::Exception::InvalidRoutePartHandler('routePart handlers
must inherit from "F3::FLOW3::MVC::Web::Routing::DynamicRoutePart"',
1218480972);


7 F3::FLOW3::MVC::Web::Routing::Route::createRoutePartsFromUriPatternPart("[postUUID].html",
*F3::FLOW3::MVC::Web::Routing::UriPatternSegmentCollection*)


/home/developer/vhosts/flow3blog/www/Packages/FLOW3/Classes/MVC/Web/Routing/F3_FLOW3_MVC_Web_Routing_Route.php:

00408:   $uriPatternSegments = explode('/', $uriPatternPath);
00409:   foreach ($uriPatternSegments as $uriPatternSegment) {

00410:    $this->uriPatternSegments->append($this->createRoutePartsFromUriPatternPart($uriPatternSegment,
$this->uriPatternSegments));

00411:   }
00412:


6 F3::FLOW3::MVC::Web::Routing::Route::parse()


/home/developer/vhosts/flow3blog/www/Packages/FLOW3/Classes/MVC/Web/Routing/F3_FLOW3_MVC_Web_Routing_Route.php:

00282:   }
00283:   if (!$this->isParsed) {

00284:    $this->parse();

00285:   }
00286:


5 F3::FLOW3::MVC::Web::Routing::Route::matches("typo3cr", *NULL*)


/home/developer/vhosts/flow3blog/www/Packages/FLOW3/Classes/MVC/Web/Routing/F3_FLOW3_MVC_Web_Routing_Router.php:

00110:   $requestQuery = $request->getRequestURI()->getQuery();
00111:   foreach (array_reverse($this->routes) as $route) {

00112:    if ($route->matches($requestPath, $requestQuery)) {

00113:     $matchResults = $route->getMatchResults();
00114:     foreach ($matchResults as $argumentName => $argumentValue) {


4 F3::FLOW3::MVC::Web::Routing::Router::route(*F3::FLOW3::MVC::Web::Request*)


/home/developer/vhosts/flow3blog/www/Packages/FLOW3/Classes/MVC/Web/F3_FLOW3_MVC_Web_RequestBuilder.php:

00109:   $routesConfiguration =
$this->configurationManager->getSpecialConfiguration(F3::FLOW3::Configuration::Manager::CONFIGURATION_TYPE_ROUTES);
00110:   $this->router->setRoutesConfiguration($routesConfiguration);

00111:   $this->router->route($request);

00112:
00113:   return $request;


3 F3::FLOW3::MVC::Web::RequestBuilder::build()


/home/developer/vhosts/flow3blog/www/Packages/FLOW3/Classes/MVC/Web/F3_FLOW3_MVC_Web_RequestHandler.php:

00088:   */
00089:  public function handleRequest() {

00090:   $request = $this->requestBuilder->build();

00091:   $this->requestProcessorChainManager->processRequest($request);
00092:   $response =
$this->objectFactory->create('F3::FLOW3::MVC::Web::Response');


2 F3::FLOW3::MVC::Web::RequestHandler::handleRequest()


/home/developer/vhosts/flow3blog/www/Packages/FLOW3/Classes/F3_FLOW3.php:

00410:   $requestHandlerResolver =
$this->objectManager->getObject('F3::FLOW3::MVC::RequestHandlerResolver',
$this->settings);
00411:   $requestHandler = $requestHandlerResolver->resolveRequestHandler();

00412:   $requestHandler->handleRequest();

00413:
00414:   if ($this->settings['persistence']['enable'] === TRUE) {


1 F3::FLOW3::run()


/home/developer/vhosts/flow3blog/www/Public/index.php:

00029: $framework = new F3::FLOW3();
00030: $framework->initialize();

00031: $framework->run();

00032: ?>




I tried to call http://f3blog/setup but there is also a error:

Some data has been added to the BlogRepository...
*Fatal error*: Call to undefined method
DateTime::AOPProxyGetProxyTargetClassName() in *
/home/developer/vhosts/flow3blog/www/Packages/TYPO3CR/Classes/FLOW3/Persistence/F3_TYPO3CR_FLOW3_Persistence_Backend.php
* on line *242


*Someone knows whats wrong?* *Did i forget any steps? *


Tom
*


More information about the TYPO3-project-5_0-general mailing list