2009-08-17 138 views
0

我想构建一个基本的应用程序,2个PHP文件,一个使用Zend_Rest_Server,另一个使用Zend_Rest_Client。Zend_Rest_Server不调用类方法

这里是服务器代码:

class test1 { 


    public function test() { 
     return "mytest"; 
    } 


} 

include_once ("common.php"); 

set_include_path('.' . PATH_SEPARATOR . '..\..\library/' . get_include_path()); 
require_once 'Zend/Loader.php'; 
Zend_Loader::registerAutoload(); 

$server = new Zend_Rest_Server(); 

$server->setClass('test1'); 
$server->handle(); 

客户端代码是

set_include_path('.' . PATH_SEPARATOR . '.\library/' . get_include_path()); 
require_once 'Zend/Loader.php'; 
Zend_Loader::registerAutoload(); 

$client = new Zend_Rest_Client('http://localhost/dbuilder/db/jpuzzle.php'); 

$client->arg("test"); 
echo $client->get(); 

当我运行命令行界面的客户端应用程序ws.php我得到这个消息:

Zend_Rest_Client_Result_Exception: REST Response Error: An error occured while p arsing the REST response with simplexml. in C:\Program Files\VertrigoServ\www\li brary\Zend\Rest\Client\Result.php on line 67

什么可能是它不运行的原因以及它如何被调试?

回答

0

实际的问题不是在服务中,而是在不赞成使用自动载入。

我更换

require_once 'Zend/Loader.php'; 
Zend_Loader::registerAutoload(); 

require_once ‘Zend/Loader/Autoloader.php’; 
$autoloader = Zend_Loader_Autoloader::getInstance(); 
$autoloader->setFallbackAutoloader(true); 

,并得到了Web服务的工作。