2013-01-14 33 views
0

我想發佈一些信息,以利用PubSub的nodes.unfortunately服務器,我無法檢索已發表before.Just如下面的鏈接問題非常相似的節點: http://community.igniterealtime.org/message/199690#199690asmack發佈訂閱getItems錯誤

具體而言,代碼片段等下列:

try { 
      LeafNode node = mPubsub.getPEPNode(USEINFONODE,mFrom); 
      if(null != node){ 
       List<Item> items = node.getItems(); 
       Log.i("items",items.toString()); 
      } 

     } catch (XMPPException e) { 
      Log.e("userInfoExtension","error : and the error is " + e.toString()); 
     } 

和輸出誤差不從服務器resposne。

調試的輸出就像這樣:

<iq id="B9tI0-4" to="pubsub.mymachine" type="get"><query xmlns="http://jabber.org/protocol/disco#info" node="theNode"></query></iq> 
<iq id="B9tI0-5" to="pubsub.mymachine" type="get"><pubsub xmlns="http://jabber.org/protocol/pubsub"><items node='theNode'/></pubsub></iq> 

然而,根據上述鏈接,預期IQ節應該是這樣的:

<iq type='get' 
    from='[email protected]' 
    to='pubsub.mymachine' 
    id='items1'> 
    <query xmlns='http://jabber.org/protocol/disco#items' 
     node='theNode'/> 
</iq> 

所以這表明我錯過iq節中的from場,我想知道如何將from ='client @ server'放入iq節中。我已經嘗試了asmack庫,包括: asmack-android-7.jar,asmack-android-7-beem.jar,asmack-android-16-beem.jar,都失敗了。

任何人都可以幫忙嗎?非常感謝。

我發現它與接收數據包有關。實際上我收到了我需要的數據包,麻煩的是數據包可能無法在某處被處理,並且它不會引發服務異常。 所以我認爲問題實際上沒有正確接收傳入的數據包。 所以在我的另一個問題:

http://stackoverflow.com/questions/14357707/how-to-send-and-listen-to-custom-xmpp-presence-packet-with-asmack-the-library 

回答

0

我很抱歉誤導你!該錯誤是由我的擴展提供程序引起的,導致解析 數據包進入無限循環,從而導致服務器異常無響應。