 
 			sessionIQ.callback = handleSessionResponse;
 			sessionIQ.callbackScope = this;
+			sessionIQ.errorCallback = handleSessionError;
 
 			send(sessionIQ);
 		}


			establishSession();
		}

		/**
		 * @private

			}

			// If it's an error, handle it
			var callbackInfo:*;
			if ( iq.type == IQ.TYPE_ERROR)
			{
				dispatchError( iq.errorCondition, iq.errorMessage, iq.errorType, iq.errorCode );

				// Start the callback for this IQ if one exists
				if ( pendingIQs[iq.id] !== undefined )
				{
					var callbackInfo:* = pendingIQs[iq.id];

					if (callbackInfo.errorFunc != null)
					{
						callbackInfo.errorFunc( iq );
					}
					pendingIQs[iq.id] = null;
					delete pendingIQs[iq.id];
				}
			}
			else
			{

				// Start the callback for this IQ if one exists
				if ( pendingIQs[iq.id] !== undefined )
				{
					callbackInfo = pendingIQs[iq.id];

					if (callbackInfo.methodScope && callbackInfo.methodName)
					{
