Tag Archives: setRawDataStream

[SOLVED] PHP Fatal error: Call to undefined method Zend_Http_Client::setRawDataStream() in /path/Zend/Gdata/App.php on line X

I am trying to use Zend Gdata Library for uploading videos to YouTube. I was trying to test the example provided, but got into a problem running the example. Here was the error:

PHP Fatal error: Call to undefined method Zend_Http_Client::setRawDataStream() in /usr/share/php/Zend/Gdata/App.php on line 661

It was because I had missed the part where I should have sent a Zend_Gdata_HttpClient() object while initializing Zend_Gdata_YouTube() object.

So, here is how I created Zend_Gdata_HttpClient() object and passed it to Zend_Gdata_YouTube() constructor. Also, video upload requires developer key which you can get from Google and username/password.

		require_once('Zend/Loader.php'); // the Zend dir must be in your include_path

		$authenticationURL= 'https://www.google.com/accounts/ClientLogin';
		Zend_Loader::loadClass('Zend_Gdata_ClientLogin');
		$httpclient = Zend_Gdata_ClientLogin::getHttpClient(
			              $username = $user,
			              $password = $pass,
			              $service = 'youtube',
			              $client = null,
			              $source = 'An App Name', // a short string identifying your application
			              $loginToken = null,
			              $loginCaptcha = null,
			              $authenticationURL
			           );

		Zend_Loader::loadClass('Zend_Gdata_YouTube');
		$yt = new Zend_Gdata_YouTube($httpclient,"An App Name","Version something or some desc","API-KEY");

Hope this helps.