JBoss SeamのサンプルをEclipse上で動かす。
JBoss Seam is an application framework for Java EE 5. Seam unifies the component models of JSF and EJB 3.0, providing a streamlined programming model for web-based enterprise applications.
Java EE 5を使ったフレームワークで、JSFとEJB 3.0を統合するコンポーネントモデルでWebベースのエンタープライズアプリ開発に合理的なプログラミングモデルを提供する---のだそうです。
又、デモページには
Creating powerful enterprise applications has never been this easy. Seam combines Enterprise JavaBeans 3.0 components with rich component-based user interfaces built using JavaServer Faces, and lets developers build more robust applications more quickly and with astonishingly little code. Seam helps eliminate a whole class of bugs that plague web development by introducing the concept of declarative application state management.
強力なエンタープライズアプリを作るのは容易じゃない。SeamはEJB 3.0とJSFで作成された強力なコンポーネントベースのユーザインターフェイスを統合し、開発者に堅牢なアプリを素早くたまげるくらい少ないコードで作成させるものです。アプリの状態管理を記述するという考え方を持ち込んだめんどいWeb開発の全部のクラスのバグを無くするのを手助けしてくれる。と、あります。
ちょうどフロントはStrutsからJSFかな〜と思い始めていたし、バックはEJB3.0で決まりか〜と思っていたのでちょっとかじってみることにした。
JBoss SeamのサンプルアプリbookingをEclise上で動かす方法がhttp://wiki.jboss.org/wiki/Wiki.jsp?page=UseJBossEclipseIDEToDoJBossSeamsBookingExampleにあるそうなので、トライしてみた。
- JDK 1.5が必要-当然Eclipseは3.1.1
- JBoss IDE - JBoss Communityも1.5系(RC1を使用)
- JBoss ASは4.0.3をインストーラを使ってejb3でインストール
だ、そうです。
上記の通りにやったのだが、17あたりのpropertyファイルが見つけられなかったりしたので、ここにあるFlushUnderstanding middlewareの通りにやると動いた。
しかし、ログイン後Hotelのデータが空っぽでそれ以上進めません。http://www.jboss.com/index.html?module=bb&op=viewtopic&t=71903にあるようにJBoss 4.0.3SP1はHibernate3のスナップショットなのでバグがあり、import.sqlがうまく動作しないようです。解決策はHibernate3のCVSからソースを落してBuildしてhibernate3.jarを入れ替えろとのことです。
参考:id:neverbird:20051107