问题描述
我正在开发基于代理的Web应用程序。前端发送到服务器参数,这些参数我将作为参数发送到特定代理。
ContainerController ac = (ContainerController) runtime.createMainContainer(p);
Object[] obj = {Amount};
try {
AgentController ag = ac.createNewAgent("a1","agents.a1",obj);//arguments
ag.start();
AgentController ag2 = ac.createNewAgent("a2","agents.a2",obj);//arguments
ag2.start();
} catch (StaleProxyException e) {
throw new Error(e);
}
在接收到这些参数之后,每个代理都需要发送回执确认,以便将其发送到Web应用程序前端。如何将参数从代理发送到主容器实现者。
如何实施?如果有更可行的方法,也欢迎
解决方法
除非在特殊情况下(此处似乎并非如此),代理不会与容器“通信”(容器不是代理,因此无法向其发送消息)。
-
您的代理应直接联系 Web 应用程序。由于这里的目标是他们使用网络服务,您可以选择一个标准的 REST 库并进行“发布”。 如果您不希望所有代理都知道网络服务的位置,则创建一个新代理来充当中介。