2010年12月10日金曜日

groovyとApache ClickでTableを使用する

groovyとApache ClickでTableを使用するには、以下のコードを実行します。

1.ページクラス
TableTest.groovy
package com.blogspot.groovyarekore.click

import org.apache.click.*
import org.apache.click.control.*
import org.apache.click.dataprovider.*

class TableTest extends Page
{
def table = new Table("table")

public TableTest()
{
table.setClass(Table.CLASS_BLUE1)
table.addColumn(new Column("itemId", "商品番号"))
table.addColumn(new Column("name", "商品名"))
table.addColumn(new Column("price", "価格"))
table.setDataProvider(new DataProvider(){
public Iterable<Item> getData()
{
def items = []
items.add(new Item(1, "desktop pc", 1000))
items.add(new Item(2, "note pc", 500))
items.add(new Item(3, "mobile phone", 400))
return items
}
})
addControl(table)
}
}

class Item
{
int itemId
String name
int price
Item(itemId, name, price)
{
this.itemId = itemId
this.name = name
this.price = price
}
}

2.HTMLページ
table-test.htm
<html>
<head><title>table test</title></head>
$headElements
<body>
$table
$jsElements
</body>
</html>

ブラウザから以下のURLにアクセスします。
http://localhost:8080/(warの名前)/table-test.htm

出力画面


動作環境
JDK6 Update22, Groovy 1.7.5, Apache Click 2.2.0, Apache Tomcat 7.0.4

関連情報
ビルドの仕方などは「groovyとApache ClickでHello Worldを作成する 」を参照
http://groovyarekore.blogspot.com/2010/11/groovyapache-clickhello-world.html

0 件のコメント:

コメントを投稿