eZ Community » Blogs » Diego Amaya » Fatal error: Class...

By

Fatal error: Class 'ezcBaseRepositoryDirectory'

Friday 20 April 2012 11:37:01 pm

  • Currently 3 out of 5 Stars.
  • 1
  • 2
  • 3
  • 4
  • 5

Fatal error: Class 'ezcBaseRepositoryDirectory' not found in <mysite>/<www>/lib/ezc/Base/src/base.php on line 463

Hi There,

I got the error Fatal error: Class 'ezcBaseRepositoryDirectory' not found in <mysite>/<temporal>/ez_www/lib/ezc/Base/src/base.php on line 463.

Fatal error: The web server did not finish its request

Cause of the error:

1) I was working on a symbolic link to a temporal folder:

<mysite>/ez_www/   ------> symbolic link to <mysite>/<temporal>/ez_www/

(ez_www contains all the ezpublish site)

The site was working fine.

2) I deleted the symbolic link and pasted directly the <temporal>/ez_www/ site into <mysite>/ez_www/ 

 

Attempted Solution: (Fail)

1. I checked into the base.php:

The line 463 is: 

 $autoloadDirs['ezc'] = new ezcBaseRepositoryDirectory( ezcBaseRepositoryDirectory::TYPE_INTERNAL, $repositoryDir, $repositoryDir . "/autoload" );

This line is inside the method getRepositoryDirectories()

  public static function getRepositoryDirectories()    {        $autoloadDirs = array();        ezcBase::setPackageDir();        $repositoryDir = self::$currentWorkingDirectory ? self::$currentWorkingDirectory : ( realpath( dirname( __FILE__ ) . '/../../' ) );        $autoloadDirs['ezc'] = new ezcBaseRepositoryDirectory( ezcBaseRepositoryDirectory::TYPE_INTERNAL, $repositoryDir, $repositoryDir . "/autoload" );
        foreach ( ezcBase::$repositoryDirs as $extraDirKey => $extraDirArray )        {            $repositoryDirectory = new ezcBaseRepositoryDirectory( ezcBaseRepositoryDirectory::TYPE_EXTERNAL, realpath( $extraDirArray['basePath'] ), realpath( $extraDirArray['autoloadDirPath'] ) );            $autoloadDirs[$extraDirKey] = $repositoryDirectory;        }
        return $autoloadDirs;    }<strong>2.</strong> 
 

I regenerate autoloads, and clear the cache, but it did not work

Solution: (Success)

I had to restart apache, i understand this is due the  Alternative PHP Cache, APC, afther that the site worked again

 

Conclusion: Even when it is a dummy error,  and the explanation may seem obvious, i would like to make it clear about the APC settings and its behaviour.

Thanks in advance

Proudly Developed with from