Hi,

I've got Doctrine working just fine, however when creating new entities it 
seems Doctrine cannot recognize the class:
This has worked for me with various other Entities, but for the new ones 
not anymore.

for instance:

<?php

namespace Entities;

use Doctrine\ORM\Mapping as ORM;

/**
 * Link
 *
 * @ORM\Table(name="links")
 * @ORM\Entity(repositoryClass="\Entities\LinkRepository")
 */
class Link
{
    /**
     * @var integer
     *
     * @ORM\Column(name="id", type="integer", precision=0, scale=0, 
nullable=false, unique=true)
     * @ORM\Id
     * @ORM\GeneratedValue(strategy="IDENTITY")
     */
    private $id;

    /**
     * @var string
     *
     * @ORM\Column(name="name", type="string", length=100, precision=0, 
scale=0, nullable=false, unique=false)
     */
    private $name;

    /**
     * @var string
     *
     * @ORM\Column(name="location", type="string", length=100, precision=0, 
scale=0, nullable=false, unique=false)
     */
    private $location;
// Getters and setters generated by Doctrine
  
}

Controller:

<?php

namespace Cms\Controller;

use \Cms\Controller\LinkController,
    \Zend\Mvc\Controller\AbstractActionController,
    \Zend\View\Model\ViewModel;


/**
 * LinkController class used for propagating all \Entities\Link related actions 
to the model
 */
class LinkController extends AbstractActionController
{

    protected $linkService;

    /**
     * Gets the LinkService
     * 
     * @return type \Cms\Service\LinkService
     */
    public function getLinkService()
    {
        if (!$this->linkService)
        {
            $sm = $this->getServiceLocator();

            if ($sm->get('Cms\Service\LinkService'))
            {
                $this->setLinkService($sm->get('Cms\Service\LinkService'));
            }
            else
            {
                throw new Zend_Controller_Action_Exception('The LinkService has 
not been correctly configured.', 404);
            }
        }
        return $this->linkService;
    }

    /**
     * Sets the LinkService
     * 
     * @access protected
     * @param LinkService $linkService
     * @return LinkController
     */
    protected function setLinkService(LinkService $linkService)
    {
        $this->linkService = $linkService;
        return $this;
    }

    /**
     * Method populates the ViewModel with all available links.
     * 
     * @return ViewModel
     */
    public function indexAction()
    {
        $links = $this->getLinkService()->getLinks();
        
        return new ViewModel(array(
            'links' => $links
        ));
    }
}

Service:

<?php
namespace Cms\Service;

use \Cms\Service\AntenneService,
    \Doctrine\Common\Persistence\ObjectManager,
    \Entities\Link,
    \Entities\LinkRepository;

/**
 * LinkService used for all Link related functionality
 *
 */
class LinkService extends AntenneService
{

    protected $linkRepository;

    /**
     * Constructor uses the ObjectManager to obtain \Entities\LinkRepository.
     *  
     * @param ObjectManager $objectManager
     */
    public function __construct(ObjectManager $objectManager)
    {
        parent::__construct($objectManager);

        $this->linkRepository = $objectManager->getRepository(Link::class);
    }

    /**
     * Set repository
     *
     * @param string $repository
     * @return \Cms\Services\LinkService
     */
    public function setRepository(LinkRepository $repository)
    {
        $this->linkRepository = $repository;

        return $this;
    }

    /**
     * Get repository
     *
     * @return LinkRepository
     */
    public function getRepository()
    {
        return $this->linkRepository;
    }

    /**
     * Get Links.
     * 
     * @return type
     */
    public function getLinks()
    {
        return $this->getRepository()->findAll();
    }

}

Message: 

Class 'Entities\Link' does not exist


Stack trace: 

#0 
/home/ubuntu/NetBeansProjects/antenne-tilburg/vendor/doctrine/common/lib/Doctrine/Common/Persistence/Mapping/RuntimeReflectionService.php(43):
 
Doctrine\Common\Persistence\Mapping\MappingException::nonExistingClass('Entities\Link')
#1 
/home/ubuntu/NetBeansProjects/antenne-tilburg/vendor/doctrine/common/lib/Doctrine/Common/Persistence/Mapping/AbstractClassMetadataFactory.php(267):
 
Doctrine\Common\Persistence\Mapping\RuntimeReflectionService->getParentClasses('Entities\Link')
#2 
/home/ubuntu/NetBeansProjects/antenne-tilburg/vendor/doctrine/common/lib/Doctrine/Common/Persistence/Mapping/AbstractClassMetadataFactory.php(297):
 
Doctrine\Common\Persistence\Mapping\AbstractClassMetadataFactory->getParentClasses('Entities\Link')
#3 
/home/ubuntu/NetBeansProjects/antenne-tilburg/vendor/doctrine/common/lib/Doctrine/Common/Persistence/Mapping/AbstractClassMetadataFactory.php(211):
 
Doctrine\Common\Persistence\Mapping\AbstractClassMetadataFactory->loadMetadata('Entities\Link')
#4 
/home/ubuntu/NetBeansProjects/antenne-tilburg/vendor/doctrine/orm/lib/Doctrine/ORM/EntityManager.php(295):
 
Doctrine\Common\Persistence\Mapping\AbstractClassMetadataFactory->getMetadataFor('Entities\Link')
#5 
/home/ubuntu/NetBeansProjects/antenne-tilburg/vendor/doctrine/orm/lib/Doctrine/ORM/Repository/DefaultRepositoryFactory.php(67):
 Doctrine\ORM\EntityManager->getClassMetadata('Entities\Link')
#6 
/home/ubuntu/NetBeansProjects/antenne-tilburg/vendor/doctrine/orm/lib/Doctrine/ORM/Repository/DefaultRepositoryFactory.php(50):
 
Doctrine\ORM\Repository\DefaultRepositoryFactory->createRepository(Object(Doctrine\ORM\EntityManager),
 'Entities\Link')
#7 
/home/ubuntu/NetBeansProjects/antenne-tilburg/vendor/doctrine/orm/lib/Doctrine/ORM/EntityManager.php(759):
 
Doctrine\ORM\Repository\DefaultRepositoryFactory->getRepository(Object(Doctrine\ORM\EntityManager),
 'Entities\Link')
#8 
/home/ubuntu/NetBeansProjects/antenne-tilburg/module/Cms/src/Cms/Service/LinkService.php(35):
 Doctrine\ORM\EntityManager->getRepository('Entities\Link')
#9 
/home/ubuntu/NetBeansProjects/antenne-tilburg/module/Cms/src/Cms/Service/ServiceAbstractServiceFactory.php(49):
 Cms\Service\LinkService->__construct(Object(Doctrine\ORM\EntityManager))
#10 [internal function]: 
Cms\Service\ServiceAbstractServiceFactory->createServiceWithName(Object(Zend\ServiceManager\ServiceManager),
 'cmsservicelinks...', 'Cms\Service\Lin...')
#11 
/home/ubuntu/NetBeansProjects/antenne-tilburg/vendor/zendframework/zendframework/library/Zend/ServiceManager/ServiceManager.php(902):
 call_user_func(Array, Object(Zend\ServiceManager\ServiceManager), 
'cmsservicelinks...', 'Cms\Service\Lin...')
#12 
/home/ubuntu/NetBeansProjects/antenne-tilburg/vendor/zendframework/zendframework/library/Zend/ServiceManager/ServiceManager.php(1064):
 Zend\ServiceManager\ServiceManager->createServiceViaCallback(Array, 
'cmsservicelinks...', 'Cms\Service\Lin...')
#13 
/home/ubuntu/NetBeansProjects/antenne-tilburg/vendor/zendframework/zendframework/library/Zend/ServiceManager/ServiceManager.php(620):
 
Zend\ServiceManager\ServiceManager->createFromAbstractFactory('cmsservicelinks...',
 'Cms\Service\Lin...')
#14 
/home/ubuntu/NetBeansProjects/antenne-tilburg/vendor/zendframework/zendframework/library/Zend/ServiceManager/ServiceManager.php(572):
 Zend\ServiceManager\ServiceManager->doCreate('Cms\Service\Lin...', 
'cmsservicelinks...')
#15 
/home/ubuntu/NetBeansProjects/antenne-tilburg/vendor/zendframework/zendframework/library/Zend/ServiceManager/ServiceManager.php(504):
 Zend\ServiceManager\ServiceManager->create(Array)
#16 
/home/ubuntu/NetBeansProjects/antenne-tilburg/module/Cms/src/Cms/Controller/LinkController.php(38):
 Zend\ServiceManager\ServiceManager->get('Cms\Service\Lin...')
#17 
/home/ubuntu/NetBeansProjects/antenne-tilburg/module/Cms/src/Cms/Controller/LinkController.php(70):
 Cms\Controller\LinkController->getLinkService()
#18 
/home/ubuntu/NetBeansProjects/antenne-tilburg/vendor/zendframework/zendframework/library/Zend/Mvc/Controller/AbstractActionController.php(83):
 Cms\Controller\LinkController->indexAction()
#19 [internal function]: 
Zend\Mvc\Controller\AbstractActionController->onDispatch(Object(Zend\Mvc\MvcEvent))
#20 
/home/ubuntu/NetBeansProjects/antenne-tilburg/vendor/zendframework/zendframework/library/Zend/EventManager/EventManager.php(468):
 call_user_func(Array, Object(Zend\Mvc\MvcEvent))
#21 
/home/ubuntu/NetBeansProjects/antenne-tilburg/vendor/zendframework/zendframework/library/Zend/EventManager/EventManager.php(207):
 Zend\EventManager\EventManager->triggerListeners('dispatch', 
Object(Zend\Mvc\MvcEvent), Object(Closure))
#22 
/home/ubuntu/NetBeansProjects/antenne-tilburg/vendor/zendframework/zendframework/library/Zend/Mvc/Controller/AbstractController.php(117):
 Zend\EventManager\EventManager->trigger('dispatch', Object(Zend\Mvc\MvcEvent), 
Object(Closure))
#23 
/home/ubuntu/NetBeansProjects/antenne-tilburg/vendor/zendframework/zendframework/library/Zend/Mvc/DispatchListener.php(114):
 
Zend\Mvc\Controller\AbstractController->dispatch(Object(Zend\Http\PhpEnvironment\Request),
 Object(Zend\Http\PhpEnvironment\Response))
#24 [internal function]: 
Zend\Mvc\DispatchListener->onDispatch(Object(Zend\Mvc\MvcEvent))
#25 
/home/ubuntu/NetBeansProjects/antenne-tilburg/vendor/zendframework/zendframework/library/Zend/EventManager/EventManager.php(468):
 call_user_func(Array, Object(Zend\Mvc\MvcEvent))
#26 
/home/ubuntu/NetBeansProjects/antenne-tilburg/vendor/zendframework/zendframework/library/Zend/EventManager/EventManager.php(207):
 Zend\EventManager\EventManager->triggerListeners('dispatch', 
Object(Zend\Mvc\MvcEvent), Object(Closure))
#27 
/home/ubuntu/NetBeansProjects/antenne-tilburg/vendor/zendframework/zendframework/library/Zend/Mvc/Application.php(313):
 Zend\EventManager\EventManager->trigger('dispatch', Object(Zend\Mvc\MvcEvent), 
Object(Closure))
#28 /home/ubuntu/NetBeansProjects/antenne-tilburg/public/index.php(28): 
Zend\Mvc\Application->run()
#29 {main}



Does anybody have any advice on this?

-- 
You received this message because you are subscribed to the Google Groups 
"doctrine-user" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to [email protected].
To post to this group, send email to [email protected].
Visit this group at http://groups.google.com/group/doctrine-user.
For more options, visit https://groups.google.com/d/optout.

Reply via email to