2016年7月20日水曜日

RestEasyを理解するためのサンプルコード集

RestEasyはJBossにバンドルされているJAX-RS実装。
日本語・英語問わず、あまり親切な情報がなかったのでサンプルとして纏めておく。

JBOSS系は公式ドキュメントがわかりづらい上に、Updateがきちんとされてなかったり、いつもながらとっつきにくい。Glassfish実装のJerseyの方がドキュメントが親切だし、mavenのarchetypeもある。選べるのならばJerseyの方がいいだろう。


RestEasySample1

まず単純なHelloworld。これが動けばとりあえず設定系は成功しているとみなして良いはず。
個人的にはweb.xmlに何も書かなくていいというのに嵌った。Jerseyでは確かここに定義を書かなければ行けなかったと記憶している。

RestEasySample2

GETとPOSTを使ったサンプルを少し。

RestEasySample3

JAXBと組み合わせた時のサンプルを少し。
メソッドの戻り値にJAXBのAnnotationをつけたクラスを指定すれば、勝手にxmlに変換してhttpの戻り値としてくれるのはちょっと感動した。

RestEasySample4

Basic認証を使ったサンプルを少し。
web.xmlでBasic認証を設定すると、JAX-RSがその先でEJBを呼び出したとしても、認証が通った状態になっている。JBOSS全体で認証をパスした扱いになっているのかも(未確認)