赛迪网 > IT技术 Java > 技术动态
  IT资讯搜索
 
IT产品搜索
[程序开发][网管世界][网络安全][数据库技术]
[操作系统][嘉宾聊天·在线访谈][活动集锦]
[精彩专题][Symantec专区][订阅IT技术周刊]
[开发论坛][网管论坛][安全论坛][数据库论坛]
[操作系统论坛][Sybase专区][IBM dW技术专区]
[病毒求助][病毒与漏洞播报][文档·源码下载]

JADE:远程机器的Agent通信应注意的问题

发布时间:2007.09.15 06:07     来源:赛迪网技术社区    作者:dxaw

要实现局域网内不同机器上的Agent进行通信,需要注意这样两个问题:

1。防火墙内关于文件与打印机共享的协议必须打开,保证机器名的解析。

2。通信时ACLMessage添加Receiver的时候指定合法的AID,这个AID一要有完整的名称,二要有合法的Addresses。

比如下面的例子

import jade.core.AID;
import jade.domain.AMSService;
import jade.domain.FIPAAgentManagement.*;
public class Sender2 extends Agent {
    protected void setup() 
    {
        
        AMSAgentDescription [] agents = null;
        AID Rams= new AID("ams@gjpc:1099/JADE");//获取gjpc机器上的ams
        Rams.addAddresses("http://gjpc:7778/acc");
          try {
            SearchConstraints c = new SearchConstraints();
            c.setMaxResults (new Long(-1));
            //agents = AMSService.search( this, new AMSAgentDescription (), c );
            //下面查找rams里面的agents
            agents = AMSService.search( this, Rams, new AMSAgentDescription (), c );
        }
        catch (Exception e) {
            System.out.println( "Problem searching AMS: " + e );
            e.printStackTrace();
        }
        
        
        ACLMessage msg = new ACLMessage(ACLMessage.INFORM);
        msg.setContent( "this is from guojie 's Ping" );//本地机器名为guojie
        //逐个向他们发送消息
        for (int i=0; i<agents.length;i++){
            if ( agents[i].getName().equals(getAID()) ){
                continue;
            }
            System.out.println(agents[i].getName().toString());
            agents[i].getName().addAddresses("http://gjpc:7778/acc");
            //这一句必须要有
            msg.addReceiver( agents[i].getName() );
        
        }
        
        System.out.println("wait fro a minute...");
        
    
        
        send(msg);
    }

}

(责任编辑:龚勋)


[ 发表评论 ] 字体[  ] [ 打印 ] [ 进入博客 ] [ 进入论坛 ]  [ 推荐给朋友 ]
  相关文章
· Java应用技巧:对于 Cookie 的操作详解 (09-13) · JAVA应用简单破解--类库提前加载 (09-13)
· 垃圾清理势在必行——Java垃圾收集算法 (09-13) · 基于Java的界面布局 DSL 的设计与实现 (09-12)
· Java编译器对于String常量表达式的优化 (09-12) · 理解Java应用服务器中的七种武器 (09-12)
· 在Java中利用JCOM实现仿Excel编程详解 (09-10) · Java性能调优工具“JRMC”的介绍 (09-10)
· 细化解析:关于数据库中Java的问答(1) (09-10) · 解析:如何在数据库中存储 Java 指令? (09-09)
  客户需求反馈表
* 姓  名:
更多资料  了解方案  认识厂商
* 单位名称:
* 联系电话:
* 电子邮件:
  赛迪推荐  
  手机·资费 ·新品·导购·评测·手机资费·宽带
手机搜索  诺基亚 N73 MOTO Z6
  IT产品 ·笔记本·台式机·服务器·打印·投影
IT产品搜索 
  IT技术 ·开发·网管·安全·数据库·操作系统
  信息化 ·热点·专题·访谈·周刊·方案案例
· 北京新规不能霸王硬上弓 网店牌照缓期执行
· 软件外包之变的新台阶: 提高全球交付能力
· ERP案例分析 SaaS带来冲击 IT服务商面临挑战
· 通方期货CRM解决方案 房地产行业CRM解决方案
  IT博客 ·曾剑秋·项立刚·Java学习·网管
  IT技术论坛 ·开发·网管·安全·数据库·系统