我用Java Rome lib創建了一個RSS源。該項目即將結束。但是我在一些RSS客戶端發現了奇怪的行爲。RSS項目順序,這有關係嗎?
我認爲這更多的是RSS客戶的問題,但我想確認一下。
羅馬在列表中保存項目,所以最新的項目是在列表的末尾。我在我的RSS客戶端(Firefox和RSS Bandit)中打開了我的訂閱源,我發現它們的順序相反(從技術上講它是按時間順序排列的,但與我使用的順序相反)。
我認爲這是一個RSS客戶端錯誤(我通常使用谷歌閱讀器),但我檢查了互聯網上的一些飼料,看到他們顯示正確的原因是他們有反向訂購的項目(最上面的最老的)。
但是XML解析器不應該依賴項目順序。爲什麼RSS客戶端使用項目順序而不是日期來排序項目?
而且,最重要的是,我應該重新排列我的物品清單嗎?
編輯: 我發現了一個簡單的解決方案:
entries.add(0,entry); // :-)
但仍對 「正確的」 客戶端行爲的問題。
一般的XML解析器肯定應該依賴於節點順序。請參閱DOM的'firstChild'。 – 2009-12-02 09:31:58
沒錯。談到XML解析器時我錯了。所以沒有問題。 只有評論羅馬在這方面的設計很差。他們在教程中有相同的錯誤。 – 2009-12-02 09:46:12