【发布时间】:2011-11-18 14:44:38
【问题描述】:
我最近从 Adobe 下载了最新版本的 BlazeDS 统包,看看是否可以让 BlazeDS 连接到我最近在 Flex 中制作的移动应用程序。在完成了一两个教程之后,我制作了一个基于浏览器的 flex 应用程序,它基本上完成了我希望移动应用程序做的所有事情。
但是,当我尝试让它在移动应用程序中运行时,我遇到了一些不同的错误,特别是 RemoteObject、Producer 对象。每当我尝试访问远程对象的 getServers() 方法(应用程序监视多个服务器的状态)时,都会收到 HTTP 502 错误。每当我尝试使用 Producer 发送消息时,都会发生同样的事情。错误是:
Channel Fault: error; NetConnection.Call.Failed: HTTP: Status 502: url: 'http://erviceStatusUpdater.swf/samples/messagebroker/amfpolling'
“ServiceStatusUpdater”是应用程序的名称,它解释了第一部分,而不是“http://”声明后的缺失字母。我是否需要为每个生产者和远程对象声明一个端点?如果是这样,它们应该是什么?我已经尝试查找它,但似乎很难找到有关此类事情的文档。
我还应该提到“样本”是当前上下文根,或者至少在使用同一服务器运行的其他项目中是这样。消息通道和远程通道已经设置好了,因为它们与使用浏览器应用程序时相同。
谢谢
编辑:我已经设法通过指定远程对象的端点来使远程对象工作。对于遇到类似问题的任何人,终点(在我的情况下)是“http://localhost:8400/{context root}/messagebroker/amf”,其中“{context root}”是您的上下文根(在我的案例是“样本”)。不过,消费者仍然没有收到消息。
【问题讨论】:
-
请将您的解决方案作为问题的正式答案发布。我很高兴你能解决这个问题。
-
谢谢,我会继续做,但还没有完全解决;消费者仍然没有工作。编辑:再过 6 个小时无法回答我的问题,因为我没有所需的 100 个代表点 :(
标签: apache-flex tomcat flex4.5 blazeds