2011-06-19 32 views
1

我正在使用JXTA 2.5實現P2P拍賣應用程序。 我需要實施發佈並發現「Product_Advertisement」,以便在市場組的同行中宣傳可用產品。 我創建了一個擴展Advertisement超類的自定義Product_Advertisement類型。這是發佈種子廣告:發佈和發現自定義JXTA廣告

<?xml version="1.0" encoding="UTF-8"?> 
<!DOCTYPE jxta:ProductAdvertisement> 
<jxta:ProductAdvertisement xml:space="default" xmlns:jxta="http://jxta.org"> 
<ID> 
    urn:jxta:jxta-Null 
</ID> 
<name> 
Sample Product 
<name/> 

<price> 
    23.50 
</price> 
<quantity> 
    4 
</quantity> 
<exchangeProducts/> 
</jxta:ProductAdvertisement> 

即使「Product_Advertisement」是沒有問題發佈後,廣告的發現並不happing如我所料。當我使用對等組的獲得DiscoveryService,趕上發佈該廣告,這裏是我收到什麼,當我使用的ToString()接收到的廣告:

<?xml version="1.0" encoding="UTF-8"?> 
<!DOCTYPE jxta:MIA> 
<jxta:MIA xml:space="default" xmlns:jxta="http://jxta.org"> 
<MSID> 
    urn:jxta:uuid-DEADBEEFDEAFBABAFEEDBABE000000010206 
</MSID> 
<Desc> 
    Default Network PeerGroup reference implementation 
</Desc> 
<Comp> 
    <Efmt> 
     JDK1.4.1 
    </Efmt> 
    <Bind> 
     V2.0 Ref Impl 
    </Bind> 
</Comp> 
<Code> 
    net.jxta.impl.peergroup.ShadowPeerGroup 
</Code> 
<PURI> 
    http://jxta-jxse.dev.java.net/download/jxta.jar 
</PURI> 
<Prov> 
    sun.com 
</Prov> 
<Parm> 
    <Svc> 
     urn:jxta:uuid-DEADBEEFDEAFBABAFEEDBABE000000100106 
    </Svc> 
    <Svc> 
     urn:jxta:uuid-DEADBEEFDEAFBABAFEEDBABE0000000E0106 
    </Svc> 
    <Svc> 
</Parm> 
</jxta:MIA> 

有人可以告訴我,我做了什麼錯?

由於提前, Dileepa

+0

當我瀏覽一些JXTA文檔時,我發現收到的廣告是模塊類實現廣告。我如何將收到的廣告標識爲產品廣告而不是MIA? –

回答

0

定製的廣告是在JXTA有點棘手。爲了簡單起見,請看一下Scribd上提供的實用JXTA II書籍。

從您提到的問題來看,您的搜索代碼肯定存在問題。您的廣告在「註冊」的可能性很高。如果您使用的是NAT後面的同行,請記住2.5是被竊聽的。你需要使用2.6或2.7。