2012-03-11 9 views
5

Estoy acostumbrado a utilizar zend mvc junto con doctrine 2.1 y 2.2 unidos con el controlador bisna.Bisna doctrine 2.1 & 2.2 La anotación "@Table" nunca se importó

Para el nuevo proyecto que estoy usando el controlador de anotación sólo para conveniance (i sn) .Como siempre he generado mi entidad de la base de datos y las carga de tryed pero mantienen que genera el error:

[Semantical Error] The annotation "@Table" in class MyWheels\Entity\Bmulog was never imported. 

Intenté agregarles el prefijo ORM \ pero eso no lo soluciona.

mi config archivo de lectura:

[production] 
phpSettings.display_startup_errors = 0 
phpSettings.display_errors = 0 
includePaths.library = APPLICATION_PATH "/../library" 
bootstrap.path = APPLICATION_PATH "/Bootstrap.php" 
bootstrap.class = "Bootstrap" 
appnamespace = "Application" 

pluginPaths.Bisna\Application\Resource\ = "Bisna/Application/Resource" 
autoloaderNamespaces[] = Bisna 
autoloaderNamespaces[] = Doctrine 
autoloaderNamespaces[] = MyWheels 
autoloaderNamespaces[] = Symfony 

resources.frontController.controllerDirectory = APPLICATION_PATH "/controllers" 
resources.frontController.params.displayExceptions = 0 

resources.layout.layoutPath = APPLICATION_PATH "/layouts/scripts/" 

resources.doctrine.cache.instances.default.namespace = "Application_" 
resources.doctrine.dbal.connections.default.parameters.dbname = "mywheels" 
resources.doctrine.dbal.connections.default.parameters.user = "root" 
resources.doctrine.dbal.connections.default.parameters.password = "" 
resources.doctrine.orm.entityManagers.default.metadataDrivers.drivers.0.adapterClass = "Doctrine\ORM\Mapping\Driver\AnnotationDriver" 
resources.doctrine.orm.entityManagers.default.metadataDrivers.drivers.0.mappingNamespace = "MyWheels\Entity" 
resources.doctrine.orm.entityManagers.default.metadataDrivers.drivers.0.mappingDirs[] = APPLICATION_PATH "\..\library\MyWheels\Entity" 
resources.doctrine.orm.entityManagers.default.metadataDrivers.drivers.0.annotationReaderClass = "Doctrine\Common\Annotations\AnnotationReader" 

a nadie ni idea de lo que va mal aquí?

mi código de entidad es:

<?php 

namespace MyWheels\Entity; 

use Doctrine\ORM\Mapping as ORM; 

/** 
* MyWheels\Entity\Bmulog 
* 
* @Table(name="bmulog") 
* @Entity 
*/ 
class Bmulog 
{ 
    /** 
    * @var integer $id 
    * 
    * @Column(name="id", type="integer", nullable=false) 
    * @Id 
    * @GeneratedValue(strategy="IDENTITY") 
    */ 
    private $id; 

    /** 
    * @var text $request 
    * 
    * @Column(name="request", type="text", nullable=false) 
    */ 
    private $request; 

    /** 
    * @var text $responce 
    * 
    * @Column(name="responce", type="text", nullable=false) 
    */ 
    private $responce; 

    /** 
    * @var string $ip 
    * 
    * @Column(name="ip", type="string", length=200, nullable=false) 
    */ 
    private $ip; 

    /** 
    * @var string $browser 
    * 
    * @Column(name="browser", type="string", length=200, nullable=false) 
    */ 
    private $browser; 

    /** 
    * @var datetime $date 
    * 
    * @Column(name="date", type="datetime", nullable=false) 
    */ 
    private $date; 


} 

Doctrina 2.2.0 resultados en aproximadamente el mismo error:

[Semantical Error] The annotation "@Doctrine\ORM\Mapping\Table" in class MyWheels\Entity\Bmulog does not exist, or could not be auto-loaded. 
+2

podría ayudar - https://github.com/guilhermeblanco/ZendFramework1-Doctrine2/issues/24 – Phil

+0

Es básicamente plantea el problema sí: D. Ahora solo estoy usando una doctrina 2.0 con alguna lib predeterminada, encontré un poco donde y eso funciona ... pero no tengo idea de por qué no estuvo mal – Bram

Respuesta

5

El uso Doctrine\ORM\Mapping implica añadir el alias de importación como prefijo de las etiquetas de anotación de la doctrina.

@ORM\Table 
@ORM\Entity 
@ORM\Column 
@ORM\... (Any Doctrine annotation) 
Cuestiones relacionadas