Issue Details (XML | Word | Printable)

Key: ZF-5382
Type: Sub-task Sub-task
Status: Resolved Resolved
Resolution: Fixed
Priority: Major Major
Assignee: Wade Arnold
Reporter: Patrick Wilson
Votes: 1
Watchers: 0
Operations

If you were logged in you would be able to see more operations.
Google issue summary
Zend Framework
ZF-5049

Multiple calls seem to break Zend/Amf/Parse/Deserializer.php

Created: 30/Dec/08 12:16 PM   Updated: 16/Jun/09 02:53 PM   Resolved: 16/Jun/09 02:53 PM
Return to search "Fixed in 1.5.1"
Component/s: Zend_Amf
Affects Version/s: 1.7.2
Fix Version/s: 1.8.4

Time Tracking:
Not Specified

Issue Links:
Dependency
 


 Description  « Hide

An AIR application I am working on makes a single call to two separate services. I get the following error:

PHP Fatal error: Uncaught exception 'Zend_Amf_Exception' with message 'Unable to parse null body data Unsupported type marker: 36' in /var/www/lib/Zend/Amf/Request.php:174
Stack trace:
#0 /var/www/lib/Zend/Amf/Request.php(125): Zend_Amf_Request->readBody()
#1 /var/www/lib/Zend/Amf/Request.php(93): Zend_Amf_Request->readMessage(Object(Zend_Amf_Parse_InputStream))
#2 /var/www/lib/Zend/Amf/Request/Http.php(64): Zend_Amf_Request->initialize('??????null/...')
#3 /var/www/lib/Zend/Amf/Server.php(365): Zend_Amf_Request_Http->__construct()
#4 /var/www/lib/Zend/Amf/Server.php(313): Zend_Amf_Server->getRequest()
#5 /var/www/index.php(26): Zend_Amf_Server->handle()
#6 {main}
thrown in /var/www/lib/Zend/Amf/Request.php on line 174

I'm using the Cairngorm framework, and the following two events, which result in requests to Zend AMF, cause this error to occur:

new DataSetEvent(DataSetEvent.GET_ALL).dispatch();
new SPIChartEvent().dispatch();

If I comment out either line so that only one request is sent at a time, the issue does not appear. Similarly, if I change the RemoteObject in my service locator from this:

<mx:RemoteObject id="DataSetService" destination="zend" source="DataSetService" showBusyCursor="true" />

to this:

<mx:RemoteObject id="DataSetService" destination="zend" source="DataSetService" showBusyCursor="true" concurrency="single" />

the issue is again avoided. I am guessing that Flash is pipelining the calls into a single request and Zend's parser isn't expecting this. Not sure, I'm not an expert in AMF, just my guess.



Wade Arnold added a comment - 11/May/09 08:32 PM

Patrick can you please submit the smallest code example possible. I can not reproduce this issue.


Stefan Klug added a comment - 13/May/09 11:08 AM

This is solved by my patch in ZF-6393
If it's absolutely needed, I can provide a testcase...


Wade Arnold added a comment - 16/Jun/09 02:34 PM

Issue is dependent on ZF-6393


Wade Arnold added a comment - 16/Jun/09 02:53 PM

resolved by ZF-6393