gpt4 book ai didi

java - 在 JXTA/JXSE 中加入现有的 PeerGroup

转载 作者:塔克拉玛干 更新时间:2023-11-03 03:55:39 33 4
gpt4 key购买 nike

我在使用 JXSE 时遇到问题。假设我有一个会合点和一个边缘点,不在同一个本地网络上。

会合点创建一个点组“test”,并在这个组中发布一个名为“test advertisement”的广告

假设我确定我的 EdgePeer 已连接到会合点。我可以使用 netpeerGroup.getRemoteAdvertisements() 找到现有的组“测试”。

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

我在“测试”PeerGroup 中找不到广告“测试广告”。但如果我在本地做所有这些事情,它就会起作用。也许我不明白 jxta 在本地和通过 Internet 工作的区别。

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

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();
}
}

}
});

try {
Thread.sleep(10000);
System.out.println("waiting for group ...");
} catch (InterruptedException e1) {
// TODO Auto-generated catch block
e1.printStackTrace();
}

if(temp == null) {
try {
System.out.println("creating new group ..");
mAdv = defaultGroup.getAllPurposePeerGroupImplAdvertisement(); /* Getting the advertisement of implemented modules */
temp = defaultGroup.newGroup(generatePeerGroupID(name), mAdv, name, name); /* creating & publishing the group */
getDefaultGroup().getDiscoveryService().remotePublish(temp.getPeerGroupAdvertisement());
} catch (Exception e) {
e.printStackTrace();
}
}

最佳答案

终于找到问题了。您必须在每个组上启动 RendezVous 服务,而不仅仅是 netPeerGroup。

这就是为什么我的软件可以在本地运行但不能在 Internet 上运行的原因。

关于java - 在 JXTA/JXSE 中加入现有的 PeerGroup,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30664327/

33 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com