<rt id="bn8ez"></rt>
<label id="bn8ez"></label>

  • <span id="bn8ez"></span>

    <label id="bn8ez"><meter id="bn8ez"></meter></label>

    posts - 431,  comments - 344,  trackbacks - 0

    Grails本身好像并沒有產生rss的插件。如果要用grails產生Rss,可以使用Rome。方法大概如下:

    下載需要的庫文件

    https://rome.dev.java.net/下載Rome,之后把rome-xxx.jar放到你的grails項目的lib目錄下。這里xxx是版本號。比如我的是rome-1.0RC1.jar

    再到http://www.jdom.org/下載JDom。之后同樣是把jdom.jar放到lib目錄下。

    書寫代碼

    創建一個controller,當然你也可以在你已經有的controller里面增加相應方法。這里我們創建一個叫做FeedController的類。

     1 import com.sun.syndication.feed.synd.*;   
     2 import com.sun.syndication.io.SyndFeedOutput;   
     3                
     4 class FeedController {   
     5        
     6     def supportedFormats = [ "rss_0.90""rss_0.91""rss_0.92""rss_0.93""rss_0.94""rss_1.0""rss_2.0""atom_0.3"]   
     7   
     8                   
     9                                 
    10        
    11     def rss = {   
    12                
    13             render(text: getFeed("rss_1.0"), contentType:"text/xml", encoding:"UTF-8")   
    14        
    15     }   
    16        
    17     def atom = {   
    18                
    19             render(text: getFeed("atom_1.0"), contentType:"text/xml", encoding:"UTF-8")   
    20                        
    21     }   
    22   
    23     // or specify your own feed type   
    24     def all = {   
    25             def format = params.id   
    26             if (supportedFormats.contains(format)) {   
    27                 render(text: getFeed(format), contentType:"text/xml", encoding:"UTF-8")   
    28             } else {   
    29                 response.sendError(response.SC_FORBIDDEN);   
    30             }                  
    31     }   
    32        
    33        
    34     def getFeed(feedType) {   
    35            
    36         def items = Post.list(max: 5, sort: "created", order: "desc")   
    37                
    38         def entries = []   
    39         items.each { item ->   
    40             def desc = new SyndContentImpl(type: "text/plain", value: item.description);   
    41             def entry = new SyndEntryImpl(title: item.name + " - " + item.summary,    
    42                     link: 'http://www.ondev.net/item/show/' + item.name,   
    43                     publishedDate: item.created, description: desc);   
    44             entries.add(entry);   
    45   
    46         }   
    47         SyndFeed feed = new SyndFeedImpl(feedType: feedType, title: '標題',   
    48                 link: 'http://www.ondev.net', description: '說明性文字',   
    49                 entries: entries);   
    50            
    51         StringWriter writer = new StringWriter();   
    52         SyndFeedOutput output = new SyndFeedOutput();   
    53         output.output(feed,writer);   
    54         writer.close();   
    55            
    56         return writer.toString();   
    57   
    58            
    59     }   
    60        
    61 }  
    62 

    之后訪問相應的頁面,比如說http://www.ondev.net/feed/rss就可以了

    原貼地址: http://www.ondev.net/story/show/75

    posted on 2008-09-07 22:53 周銳 閱讀(285) 評論(0)  編輯  收藏 所屬分類: Groovy&Grails
    主站蜘蛛池模板: 免费精品视频在线| 亚洲av永久中文无码精品| jizz18免费视频| 亚洲国产V高清在线观看| 男男gvh肉在线观看免费| 国产在线a不卡免费视频| 污视频网站在线观看免费| 亚洲AV网站在线观看| 免费高清A级毛片在线播放| 一本久久综合亚洲鲁鲁五月天 | 亚洲一区二区三区在线播放| 国产成人综合久久精品亚洲| 亚洲成AⅤ人影院在线观看| www.av在线免费观看| 亚洲中久无码永久在线观看同| 拍拍拍无挡视频免费观看1000| 亚洲av无码一区二区三区不卡 | 国产精品免费_区二区三区观看 | 国产精品九九久久免费视频 | 亚洲欧洲自拍拍偷综合| 国产福利在线免费| 亚洲综合精品第一页| 免费国产怡红院在线观看| igao激情在线视频免费| 亚洲福利视频导航| 无码人妻久久一区二区三区免费丨| 亚洲熟妇av午夜无码不卡| 亚洲成a人片在线观看久| 久久国产精品国产自线拍免费| 亚洲激情视频网站| 免费国产成人高清在线观看麻豆| 视频免费在线观看| 亚洲人成免费网站| 亚洲精品视频在线观看你懂的 | 午夜视频在线观看免费完整版| 黄色a三级免费看| 亚洲五月激情综合图片区| 久久精品a一国产成人免费网站| 免费无码一区二区| 91亚洲一区二区在线观看不卡| 日韩黄色免费观看|