0

我已经使用 Bisna lib 将 lib Doctrine 2.0 更新到 2.2。它工作得很好,但是我在Zend_Session::start()调​​用(进入Boostrap.php)时遇到了 Zend_Session / zend_auth 的问题。由于会话中存储了用户代理,我遇到了一个致命错误。

> Zend_Session_Exception Object
(
    [_previous:Zend_Exception:private] => 
    [message:protected] => Zend_Session::start() - /home/site/dev.full-estudio.com/library/Zend/Loader.php(Line:146): Error #2 include_once(): Failed opening 'Studio/Domain/Proxy/__CG__/Studio/Domain/Entity/ESecurityStudioUser.php' for inclusion

班级名称

Studio\Domain\Proxy\__CG__\Studio\Domain\Entity\ESecurityStudioUser

这个类的真正路径是

Studio\Domain\Proxy\__CG__StudioDomainEntityESecurityStudioUser

配置原则代理:

resources.doctrine.orm.entityManagers.default.proxy.autoGenerateClasses = true
resources.doctrine.orm.entityManagers.default.proxy.namespace           = "Studio\Domain\Proxy"
resources.doctrine.orm.entityManagers.default.proxy.dir                 = APPLICATION_PATH "/../library/Studio/Domain/Proxy"
4

2 回答 2

3

安德鲁的回答指出了正确的方向。

Doctrine 2.2.0 似乎不喜欢多层次的代理命名空间(至少在 ZF1.x 引导进程的上下文中——我在与巴斯蒂安完全相同的上下文中遇到它)。

所以

resources.doctrine.orm.entityManagers.default.proxy.namespace = "Fancy\Ns\Proxy"

中断代理的自动加载,而

resources.doctrine.orm.entityManagers.default.proxy.namespace = "Proxy"

工作得很好。(其实可以注释掉配置行,Bisna 会默认使用“Proxy”)。

于 2012-02-04T23:27:12.087 回答
1

我有完全相同的问题......见这里: -

http://groups.google.com/group/doctrine-user/browse_thread/thread/334c3136ccf21630

似乎 bisna lib 不完全支持学说 2.2 :(

于 2012-02-02T15:17:55.543 回答