【发布时间】:2010-05-06 18:04:29
【问题描述】:
我需要在一个 symfony 项目中使用 ZendAMF,我目前正在整合这两者。
我有一个带有两个模块的前端应用程序,其中一个是“网关”——AMF 网关。在我的前端应用程序配置中,配置函数中有以下内容:
// load symfony autoloading first
parent::initialize();
// Integrate Zend Framework
require_once('[MY PATH TO ZEND]\Loader.php');
spl_autoload_register(array('Zend_Loader', 'autoload'));
网关actions.class.php的executeIndex函数如下所示
// No Layout
$this->setLayout(false);
// Set MIME Type
$this->getResponse()->setContentType('application/x-amf; charset='.sfConfig::get('sf_charset'));
// Disable cause this is a non-html page
sfConfig::set('sf_web_debug', false);
// Create AMF Server
$server = new Zend_Amf_Server();
$server->setClass('MYCLASS');
echo $server->handle();
return sfView::NONE;
现在,当我尝试访问网关模块的 url,甚至是在此尝试之前工作正常的其他模块时,我只看到一个空白屏幕,甚至没有加载 symfony 开发栏。奇怪的是,我的 symfony 日志也没有更新,这表明 Synfony 甚至没有被“访问”。
所以推测错误与 Zend 有关,但我不知道如何找出错误可能是什么。我确实知道的一件事是这不是文件路径错误,因为如果我更改以下行中的路径(如上所示的 frontendConfiguration 的一部分),我会收到 Zend_Amf_Server not found 错误。所以路径一定是对的。此外,如果我注释掉同一行,第二个模块会恢复正常,并且我的网关会广播一个空白的 x-amf 流。
spl_autoload_register(array('Zend_Loader', 'autoload'));
有人对我如何附加此问题有任何提示吗? 谢谢 附言我目前正在运行旧版本的 Zend,这就是我使用 Zend_Loader 而不是 Zend_autoLoader 的原因(我认为)。但是我尝试切换到新的库,但错误仍然存在。所以也不是版本问题。
【问题讨论】: