Произвольная ошибка Channel.Connect.Failed при обращении к серверу Java из приложения Flex с использованием протокола AMF

У меня есть проект, опубликованный в Интернете, которым пользуются тысячи пользователей каждый день. По сути, я использую сервер в AmazonAWS с серверной частью, скомпилированной в Java 6, работающей в Tomcat. Я использую AMF для публикации сервисов, а мой клиент построен на Flex 4.6 с использованием Flash Builder для генерации классов для подключения к сервисам AMF. Код, который я использую для подключения к сервисам:

    public var cpcService:RemotingServicesImpl;

    private function callService():void
    {
        FlexGlobals.topLevelApplication.callingService=true;

        encryptedSession=ResourcesUtil.buildSessionId(globalSettings.sessionId, globalSettings);
        var responder:Responder=new Responder(gameStateLoaded, gameStateFailed);
        var token:AsyncToken=cpcService.getGameState(encryptedSession, taskKey);
        token.addResponder(responder);
    }

    private function gameStateFailed(ev:FaultEvent=null):void
    {
        DisplayUtil.trackErrorInfoEvent("FATAL - FatalError", "getGameState-" + FlexGlobals.topLevelApplication.mainView.currentState, ev, encryptedSession);
    }

    private function gameStateLoaded(ev:Object):void
    {
        // my fantastic code when everything is ok
    }

Обычно все в порядке, и мое приложение работает, но некоторые вызовы (например, 1 раз в 500) не работают, я знаю это, потому что в функции trackErrorInfoEvent я регистрирую событие в Google Analytics, поэтому я знаю, что это происходит случайно, Это ошибка:

faultCode = "Client.Error.MessageSend"
faultDetail = "Channel.Connect.Failed error NetConnection.Call.Failed: HTTP: Failed: url: 'https://appcog.cognifit.com/messagebroker/amf'"
faultString = "Send failed"
rootCause = (null)

Конечно, URL-адрес правильный и работает все время.

Я видел в некоторых блогах, что добавление этой строки:

    <add-no-cache-headers>false</add-no-cache-headers>

проблема исправлена, но у меня есть эта строка в моем файле конфигурации и все еще происходит.

Я проверил журналы своего сервера, и у меня нет записей о прерываниях обслуживания в любое время.

Я очень ценю любую помощь, спасибо заранее!

0 ответов

Другие вопросы по тегам