将服务器端消息从 BlazeDS 发送到所有浏览器时出现问题
我在从服务器上的 BlazeDS 向 Flex 客户端发送消息时遇到了一些困难。我在 services-config.xml 文件中正确设置了适配器和目标(我认为)messaging-config.xml 和流媒体通道设置。这些消息在 Safari(Mac 和 PC)中运行良好,但在其他浏览器中则不然。
messages-config.xml 中的相关位 适配器: 目的地:
<destination id="FriendNotifierGateway">
<adapter ref="friendNotifierAdapter" />
<properties>
<server>
<max-cache-size>1000</max-cache-size>
<durable>true</durable>
<allow-subtopics>true</allow-subtopics>
<subtopic-separator>.</subtopic-separator>
</server>
</properties>
<channels>
<channel ref="my-streaming-amf"/>
<channel ref="cf-polling-amf"/>
</channels>
services-config.xml 中的相关位
<channel-definition id="my-streaming-amf" class="mx.messaging.channels.StreamingAMFChannel">
<endpoint url="http://{server.name}:{server.port}/{context.root}/messagebroker/amfsecure/streamingamf" class="flex.messaging.endpoints.StreamingAMFEndpoint" />
<properties>
<idle-timeout-minutes>0</idle-timeout-minutes>
<max-streaming-clients>500</max-streaming-clients>
<server-to-client-heartbeat-millis>5000</server-to-client-heartbeat-millis>
<user-agent-settings>
<user-agent match-on="MSIE" kickstart-bytes="2048" max-streaming-connections-per-session="1" />
<user-agent match-on="Firefox" kickstart-bytes="2048" max-streaming-connections-per-session="4" />
<user-agent match-on="Safari" kickstart-bytes="2048" max-streaming-connections-per-session="3" />
<user-agent match-on="Opera" kickstart-bytes="2048" max-streaming-connections-per-session="3" />
<user-agent match-on="Chrome" kickstart-bytes="2048" max-streaming-connections-per-session="3" />
</user-agent-settings>
</properties>
我觉得通道定义中的设置正确,但也许其中一些用户代理设置已关闭(我已经使用了它们的设置,到目前为止没有任何效果)。
预先感谢您的任何建议或见解!
问候, 克雷格
I've run into a bit of a wall with sending messages from BlazeDS on the server to Flex clients. I have my adapters and destinations set properly (I think) messaging-config.xml and my streaming channel setup in my services-config.xml files. The messages work beautifully in Safari (Mac and PC) but no other browsers.
relevant Bits from messaging-config.xml
Adapter:
Destination:
<destination id="FriendNotifierGateway">
<adapter ref="friendNotifierAdapter" />
<properties>
<server>
<max-cache-size>1000</max-cache-size>
<durable>true</durable>
<allow-subtopics>true</allow-subtopics>
<subtopic-separator>.</subtopic-separator>
</server>
</properties>
<channels>
<channel ref="my-streaming-amf"/>
<channel ref="cf-polling-amf"/>
</channels>
Relevant Bits from services-config.xml
<channel-definition id="my-streaming-amf" class="mx.messaging.channels.StreamingAMFChannel">
<endpoint url="http://{server.name}:{server.port}/{context.root}/messagebroker/amfsecure/streamingamf" class="flex.messaging.endpoints.StreamingAMFEndpoint" />
<properties>
<idle-timeout-minutes>0</idle-timeout-minutes>
<max-streaming-clients>500</max-streaming-clients>
<server-to-client-heartbeat-millis>5000</server-to-client-heartbeat-millis>
<user-agent-settings>
<user-agent match-on="MSIE" kickstart-bytes="2048" max-streaming-connections-per-session="1" />
<user-agent match-on="Firefox" kickstart-bytes="2048" max-streaming-connections-per-session="4" />
<user-agent match-on="Safari" kickstart-bytes="2048" max-streaming-connections-per-session="3" />
<user-agent match-on="Opera" kickstart-bytes="2048" max-streaming-connections-per-session="3" />
<user-agent match-on="Chrome" kickstart-bytes="2048" max-streaming-connections-per-session="3" />
</user-agent-settings>
</properties>
I feel like things are setup correctly in the channel definition but, perhaps, some of those user-agent settings are off (I have played with their settings, to no avail thus far).
Thanks, in advance, for any suggestions or insights!
Regards,
Craig
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(1)
我从来没有弄清楚为什么服务器端消息从未到达客户端。然而,我的设置对于活动站点来说不太理想。因此,我转而使用 ActiveMQ,从那时起,消息传递就变得非常棒!
I never sorted out why the server-side messages never reached the client. However, my setup was less than ideal for an active site. So, I switched to using ActiveMQ and, ever since, the messaging has been fantastic!