BlazeDS Channel подключается и отключается сразу - PullRequest
0 голосов
/ 09 сентября 2011

Я подключаюсь к серверу BlazeDS с помощью простого компонента Flex, который просто пытается подписаться на данные в реальном времени

Вот каналы и потребитель
    <mx:ChannelSet id="channelSet">
            <mx:AMFChannel url="http://localhost:8080/MyApp/messagebroker/streamingamf/"/>     
    </mx:ChannelSet>        
    <mx:Consumer id="consumer" 
                 destination="feed" 
                 channelSet="{channelSet}"
                 channelConnect="consumer_channelConnectHandler(event)"
                 channelDisconnect="consumer_channelDisconnectHandler(event)"
                 message="consumer_messageHandler(event.message)"
                 fault="consumer_faultHandler(event)"/>

Я отключаюсь сразу после подключения (вызываются и consumer_channelConnectHandler, и customer_channelDisconnectHandler).

Не могли бы вы понять, почему?

1 Ответ

3 голосов
/ 12 сентября 2011

Здесь стоит отметить пару вещей:

  • Конечная точка StreamingAMF настроена для канала AMFC. Это неправильно, я подозреваю, что вы хотите StreamingAMFChannel.

  • Если вы используете AMFChannel с потребителем, вам нужно поговорить с конечной точкой AMFLongPolling, и в этом случае для AMFChannel должно быть установлено значение pollingEnabled, равное true. однако, я подозреваю, что вы действительно хотите StreamingAMFChannel, в этом случае см. пункт 1.

  • Как только вы настроите StreamingAMFChannel, вы обнаружите, что все еще получаете немедленное отключение на клиенте. Это происходит, когда у вас есть несколько подключений от одного и того же клиента (т. Е. Вкладок), и у вашего services-config.xml установлен слишком низкий max-streaming-connections-per-session. Обычно вы хотите, чтобы этот набор был равен 1, но для разработки это может быть болезненно, поэтому установите его выше и используйте отдельный services-config.xml с производственными настройками для производства.

...