|
GettingStarted
ja, en T2の具体的なセットアップや動かし方を学びます. HelloWorldはじめに、ブラウザから"http://localhost:8080/sample/helloworld"にアクセスし、画面に"HelloWorld"と表示させてみましょう. 手順としては以下のようになります.
では、T2を動かすための環境を用意しましょう. 実行環境を用意するT2の実行には、JREとWebコンテナが必要です. JRET2ではJRE6以上必須です.こちらからダウンロードできます. WebコンテナT2は以下のJavaEE仕様に依存しています.
例えばTomcatであればバージョン6以降を使用してください. その他のWebコンテナも、最新の物であれば動作します. T2に必要なjarファイルを用意するT2の実行には、以下のjarファイルが必要です.
logbackの代わりに、その他のロギングライブラリ(log4j,JDKLogger)も使用することが出来ます. その場合は、slf4jから各ロギングライブイブラリ用の追加jarをダウンロードしてください. T2の設定を行うT2の設定は、web.xmlに記述します。 <?xml version="1.0" encoding="ISO-8859-1"?>
<web-app xmlns="http://java.sun.com/xml/ns/javaee"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://java.sun.com/xml/ns/javaee http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd"
version="2.5">
<filter>
<filter-name>t2</filter-name>
<filter-class>org.t2framework.t2.filter.T2Filter</filter-class>
<init-param>
<param-name>t2.rootpackage</param-name>
<param-value>sample.page</param-value>
</init-param>
</filter>
<filter-mapping>
<filter-name>t2</filter-name>
<url-pattern>/*</url-pattern>
</filter-mapping>
</web-app>T2が動作するのに必要なのは、org.t2framework.t2.filter.T2Filterクラスです. このT2Filterが全てのリクエストを受け取り、処理を行います. T2Filterには、初期パラメータとして「t2.rootpackage」を指定します. このパラメータの値として、ブラウザからのリクエストを処理するクラスが入っているパッケージを指定します. T2は、このパッケージ以下(サブパッケージも含む)の@Pageアノテーションがついているクラスを探し、登録を行います. なお、詳しい説明はConfigurationのページを参照して下さい. ブラウザからのリクエストを処理するクラスを作成するブラウザからのリクエストを受け取るクラスを、Pageクラスと呼びます. Pageクラスは、次のように作成します. @Page("/helloworld")
public class HelloPage {
}Pageクラスには、まず@Pageアノテーションを付与します. @Pageアノテーションの値に設定するのは、コンテキストルート以下のパスになります. コンテキストルートが"/sample"の場合に、"http://localhost:8080/sample/helloworld"のリクエストを処理するために、Pageアノテーションの値に"/helloworld"を設定します. このアノテーションを付与する事で、特定のURLをPageクラスにひもづけられます. 次に、処理を行うメソッド(T2ではアクションメソッドと呼びます)を作成します。 @Page("/helloworld")
public class HelloPage {
@Default
public Navigation index() {
String message ="HelloWorld";
return SimpleText.out(message);
}
}アクションメソッドには、アノテーションを付与します。この例では「@Default」アノテーションを付与しています. メソッドにつけるアノテーションは、そのメソッドがどういった条件で呼び出されたいか(例えばGETリクエストの時だけ呼び出されたい、など)をT2に知らせるためのマーカーです. @Defaultアノテーションは、Pageクラスが呼び出された時に、デフォルトで呼び出されるメソッドにつけるアノテーションです. このサンプルでは、アクションメソッドに@Defaultを付与して、T2から呼び出されるようにしています. (メソッドに付与する各種アノテーションについては、別途説明を行います) メソッドでは、戻り値でNavigationを返します. Navigationは、T2に次の処理を指定するためのインターフェースです.このサンプルでは、"HelloWorld"という文字列を単にブラウザに返すだけなので、 Navivationインターフェースを実装したSimpleTextクラスを使用して、"SimpleText.to(message)"としています. (ほかにも、JSPにフォワードするNavigationや、リダイレクトするNavigationなどがあります。これらについては別途説明を行います) 以上で設定・実装は終了です.Webコンテナに配備することで、"HelloWorld"が表示される事が確認出来ると思います。 | |