Ver Mensaje Individual
  #1 (permalink)  
Antiguo 28/11/2010, 07:03
nerthalas
 
Fecha de Ingreso: noviembre-2010
Mensajes: 21
Antigüedad: 13 años, 5 meses
Puntos: 1
Problema con Namespace: no encuentra clase dentro de Library/My

Saludos.

Aprovecho mi primer mensaje en este magnífico foro para pedir ayuda sobre un problema que me está dando muchos dolores de cabeza en Zend Framework 1.10.

Tengo una aplicación con un plug-in llamado CheckAccess para comprobar permisos de acceso a los diferentes módulos, controladores y acciones. Este plug-in llama a su vez a una clase "externa" llamada Acl.php y localizada dentro de Zend/Library, concretamente en la carpeta My/Permission.

Dentro de Application.ini he registrado el namespace:

Código PHP:
autoloaderNamespaces[] = "My" 
Pues bien, el plug-in funciona adecuadamente pero cuando trata de instanciar un objeto perteneciente a la clase Acl.php, concretamente
Código PHP:
new My_Permission_Acl 
salta el siguiente error:

Cita:
Fatal error: Class 'My_Permission_Acl' not found in E:\Utilidades\wamp\Zend\library\My\Controller\Plug in\checkaccess.php
La clase Acl.php dentro de Zend/Library/My/Permission es tal que así:

Código PHP:
class My_Permission_Acl extends Zend_Acl   {código aquí} 
Mi bootstrap es el siguiente:

Código PHP:
class Bootstrap extends Zend_Application_Bootstrap_Bootstrap
{

        protected function 
_initPlugins()
        {
        require_once 
'Zend/Loader/Autoloader.php';
        
$this->bootstrap('frontController');

        
$plugin = new My_Controller_Plugin_Layout();
        
$this->frontController->registerPlugin($plugin);
        
        
$plugin2 = new My_Controller_Plugin_CheckAccess();
        
$this->frontController->registerPlugin($plugin2);
        
        }
        


Realmente no sé si ese "require_once Autoloader" es realmente necesario. El plug-in Layout sirve para cargar un layout diferente dependiendo del módulo concreto de la aplicación y funciona correctamente.

¿Podría alguien echarme una mano, por favor? Espero haberme explicado bien

Muchas gracias por anticipado.