This TechNote describes the following error messages, which may be thrown in response to an error condition when using the Action Message Format (AMF) channel type within an Adobe Flex data services application:
- [ERROR] [Endpoint.AMF] Error deserializing client message
- [ERROR] [Endpoint.AMF] Unsupported AMF version 49,259
- [ERROR] [Endpoint.AMF] Connection reset by peer:socket write error
- [ERROR] [Endpoint.AMF] Broken pipe [errno=32, syscall=send]
[ERROR] [Endpoint.AMF] Error deserializing client message]
Typically signifies that a fatal exception happened during deserialization of an AMF message from a client. The messaging framework attempts to get a meaningful message back to the client in a response, however this is not always possible, especially for batched AMF messages. This message always includes a string representation of the exception that occurred, including a detailed stack trace, which should indicate the error and its source.
[ERROR] [Endpoint.AMF] Unsupported AMF version 49,259]
The first 2 bytes of an AMF message are expected to contain the AMF protocol version number. This is a 16 bit value that must be 0 or 3. The request that was sent to the server had an incorrect value (noted in the error message). This is most likely the result of a client sending a non-AMF formatted message (for instance a browser GET or POST request) to the server endpoint. For more information on AMF and its version number see the AMF0 and AMF3 specifications at http://opensource.adobe.com/wiki/display/blazeds/Developer+Documentation.
[ERROR] [Endpoint.AMF] Connection reset by peer:socket write error]
This is a general TCP networking error, returned by the JVM/Operating system, that happens when the server is attempting to write a response back to a client and the client has "hung up the phone", abruptly terminating the TCP socket. This can happen when a browser containing a Flash client in the middle of a request is abruptly closed. Since this is an action taken by the client, these errors are common in many web based servers.
[ERROR] [Endpoint.AMF] Broken pipe [errno=32, syscall=send]
This is a networking error, returned by the JVM/Operating system, that happens when the server is attempting to write a response back to a client and the client has "hung up the phone", abruptly terminating the connection. This can happen when a browser containing a Flash client in the middle of a request is abruptly closed. Since this is an action taken by the client, these errors are common in many web based servers.