我已经编写了一个数据库更新软件,它允许我部署一个jade移动代理以更新数据库。为了运行它,我需要使用AMS gui启动它。我希望能够从gui中启动它。我现在已经做了一个很好的秋千,我只需要知道允许我点击“更新”按钮时启动我的移动代理的代码。代码是什么?提前致谢。使用swing启动Jade代理
3
A
回答
1
要启动代理或执行与JADE相关的任何操作,您需要使用JADE库和API编写代码,而不管您使用了哪个前端(此例中为Swing) 一个建议是,为了保持模块化是创建另一个文件,它可以完成许多您想要的操作之一,并让您的Swing GUI与该文件交互(通过套接字),从而触发您的操作。 该文件将充当服务器,将听取前端并完成相应的工作。但所有命令都要使用JADE API进行编码。一个这样的代码:
ContainerController cc = Runtime.instance().createAgentContainer(newProfileImpl());
Object arguments[] = new Object[1];``arguments[0]=new Object();
AgentController dummy = cc.createNewAgent("mob2","mobiletrial", arguments);
dummy.start();
0
这是我写的,从another.You'll启动一个代理的方法已经进行编辑的多容器使用。
void launchAgent(final String AgentName, final String AgentType)
{
log(Level.FINER,"attempting to launch angent name: "+AgentName+" type: "+AgentType);
CreateAgent ca = new CreateAgent();
ca.setAgentName(AgentName);
ca.setClassName(AgentType);
ca.setContainer(new ContainerID(AgentContainer.MAIN_CONTAINER_NAME, null));
Action actExpr = new Action(this.getAMS(), ca);
ACLMessage request = new ACLMessage(ACLMessage.REQUEST);
request.addReceiver(this.getAMS());
request.setOntology(JADEManagementOntology.getInstance().getName());
request.setLanguage(FIPANames.ContentLanguage.FIPA_SL);
request.setProtocol(FIPANames.InteractionProtocol.FIPA_REQUEST);
try {
getContentManager().fillContent(request, actExpr);
addBehaviour(new AchieveREInitiator(this, request) {
protected void handleInform(ACLMessage inform) {
log(Level.INFO,"Agent successfully created name:"+AgentName+" type: "+AgentType);
}
protected void handleFailure(ACLMessage failure) {
log(Level.SEVERE,"Agent launch failed name: "+AgentName+" type: "+AgentType);
}
});
}
catch (Exception e) {
e.printStackTrace();
}
}
相关问题
- 1. 使用Jade for Android创建移动代理
- 2. 在Ubuntu10.04 Linux中启动Jade
- 3. 如何删除Jade代理
- 4. JADE找不到代理
- 5. 用jsp页面交互jade代理
- 6. 代理在JADE行为不起作用
- 7. Vundle:启动Jade突出显示?
- 8. Swing UI弹簧启动
- 9. 从java swing启动Clojure REPL
- 10. 如何启动MMC代理?
- 11. 启动Sql Server代理
- 12. 从activemq.xml文件读取代理配置并使用Java代码启动代理
- 13. JADE(Java) - 更改代理程序容器
- 14. JADE IPMS跨平台代理迁移
- 15. 另一个代理商Creata Jade Agent
- 16. 在JADE中运行Hello代理
- 17. Jade无法创建代理MyAgent
- 18. 重新启动Swing应用程序
- 19. JADE代理不添加到代理列表
- 20. Jade Library-集装箱之间的代理移动
- 21. 使用代码启动photoshop动作使用代码启动Photoshop动作可以使用代码
- 22. 使用Runtime.getRuntime()运行Java Swing应用程序启动jEdit()
- 23. 使用BTrace代理启动应用程序时发生NullPointerException
- 24. 从swing中的事件处理程序启动服务器
- 25. 使用jQuery和Jade
- 26. 如何使用ActiveMQ-CPP启动嵌入式代理
- 27. 使用mymosquitto.conf启动Mosquitto MQTT代理时出错
- 28. 配置mongod服务:启动守护进程或启动代理?
- 29. 程序启动后启动Java代理程序
- 30. ssh代理启动但无法连接到认证代理
我过去所做的是创建一个启动其他代理的“协调代理”。通常通过bools(而不是套接字)使用swing和interface来访问协调器。 – Clintus 2017-09-07 11:53:15