相簿即日起提供 RSS 訂閱服務

最近想幫相簿製作 RSS Feed,研究了一下,找到一個 java 的 Open Source RSS4j
提供 RSS 製作與剖析,參考作者的 Sample Code,很快地就整合到相簿的管理介面裡了。以後每次 Publish 一個相簿,RSS 都會自動更新了。

簡單說明一下如何利用 RSS4j 來製作 RSS

1.先去下載 RSS4j 回來,解開後把 rss4j.jar 放到 WEB-INF/lib 下面。
2.再到 Apache Xerces 下載最新的 xerces2-j ,解開後將裡面的 jar 檔都一併放到 WEB-INF/lib 下面。
3.剩下的就是寫 code 整合到相簿的管理介面中了。

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
`

    String photo_root = this.getServletContext().getRealPath("/");
String rss_file = photo_root + File.separator + "rss.xml";

// 產生 RSS XML Document
RssDocument doc = new RssDocument();
doc.setVersion(RssDocument.VERSION_10);

// 產生相簿這個 Channel
RssChannel channel = new RssChannel();
channel.setChannelTitle("我的相簿");
channel.setChannelLink("http://broso.twbbs.org/photo");
channel.setChannelDescription("隨想意誌 我的相簿");
channel.setChannelUri("http://broso.twbbs.org/photo");
doc.addChannel(channel);


for (int i=0;i<photo_album.size();i++) {
....
....
// 將每個相簿加入 RSS 中
RssChannelItem item1 = new RssChannelItem();
item1.setItemTitle(Title);
item1.setItemLink("http://broso.twbbs.org/photo/"+DirName);
item1.setItemDescription( Date);
channel.addItem(item1);
}

// 產生 RSS XML
File file = new File(rss_file);
try {
RssGenerator.generateRss(doc, file);
System.out.println("RSS file written.");
} catch (RssGenerationException e) {
System.out.println(e.getMessage());
e.printStackTrace();
out.println(e.getMessage());
return;
} catch (Exception e) {
System.out.println(e.getMessage());
e.printStackTrace();
out.println(e.getMessage());
return;
}

4.搞定!!

發佈留言

發佈留言必須填寫的電子郵件地址不會公開。 必填欄位標示為 *

這個網站採用 Akismet 服務減少垃圾留言。進一步了解 Akismet 如何處理網站訪客的留言資料