小编cra*_*xxl的帖子

加入JXTA/JXSE中的现有PeerGroup

我使用JXSE时遇到问题.假设我有一个rendezVous对等体和一个边缘对等体,而不是在同一个本地网络上.

rendezVous对等体创建一个peerGroup"test",并在该组中发布名为"test advertisement"的广告

假设我确信我的EdgePeer已连接到rendezVous对等体.我可以使用netpeerGroup.getRemoteAdvertisements()找到现有的组"test".

但我不知道如何加入这个现有的小组.我尝试了netpeergroup.newGroup(testAdv),testAdv =已创建的peerGroupAdvertisement.

我在"测试"PeerGroup中找不到广告"测试广告".但如果我在本地做所有这些事情,它就有效.也许我不明白jxta如何在本地和互联网上工作的区别.

这里是创建或加入组的代码:

public void addGroup(final String name) {
    ModuleImplAdvertisement mAdv = null;
    PeerGroup group = null;
    temp = null;

    defaultGroup.getDiscoveryService().getRemoteAdvertisements(null, DiscoveryService.GROUP, 
            "Name", name, 1, new DiscoveryListener() {

                @Override
                public void discoveryEvent(DiscoveryEvent event) {
                    Enumeration<Advertisement> advs = event.getResponse().getAdvertisements();
                    while(advs.hasMoreElements()) {
                        System.out.println("groupe found");
                        PeerGroupAdvertisement adv = (PeerGroupAdvertisement) advs.nextElement();
                        System.out.println("group name : " + adv.getName());
                        try {
                            temp = defaultGroup.newGroup(adv);
                            System.out.println("group joined");
                        } catch (Exception e) {
                            // TODO Auto-generated catch block
                            e.printStackTrace();
                        }
                    }

                }
            }); …
Run Code Online (Sandbox Code Playgroud)

java jxta p2p

8
推荐指数
1
解决办法
238
查看次数

标签 统计

java ×1

jxta ×1

p2p ×1