1. BuildConfig.groovyでROMEのライブラリを指定します。
...省略... repositories { inherits true // Whether to inherit repository definitions from plugins grailsPlugins() grailsHome() grailsCentral() mavenCentral() // uncomment these to enable remote dependency resolution from public Maven repositories // mavenCentral()をuncommentする mavenCentral() //mavenLocal() //mavenRepo "http://snapshots.repository.codehaus.org" //mavenRepo "http://repository.codehaus.org" //mavenRepo "http://download.java.net/maven/2/" //mavenRepo "http://repository.jboss.com/maven2/" } dependencies { // specify dependencies here under either 'build', 'compile', 'runtime', 'test' or 'provided' scopes eg. // ROMEのライブラリを指定 runtime 'rome:rome:1.0' // runtime 'mysql:mysql-connector-java:5.1.16' } ...省略...2. コントローラークラスで以下のようなコードを記述します。
package yourpackage import com.sun.syndication.feed.synd.* import com.sun.syndication.io.* class RssController { def index() { def uri = "http://groovyarekore.blogspot.com/feeds/posts/default" return [feed:new SyndFeedInput(false).build( new InputStreamReader(new URL(uri).openStream(), "UTF-8") )] } }3. ビューに以下のようなマークアップを記述します。
<!-- RSSの内容を出力 --> <h2>${feed.title}</h2> <ul> <g:each in="${feed.entries}" status="i" var="entry"> <li>${entry.publishedDate.format('yyyy/MM/dd(E)')}:<a href="${entry.link}" target="_blank">${entry.title}</a> </li> </g:each> </ul>出力画面
動作環境
grails 2.0.1
関連情報
groovyとROMEでATOM/RSSフィードのエントリを取得する
http://groovyarekore.blogspot.jp/2009/09/groovyromeatomrss.html
0 件のコメント:
コメントを投稿