Successfully reported this slideshow.
We use your LinkedIn profile and activity data to personalize ads and to show you more relevant ads. You can change your ad preferences anytime.

Wicket + EJB3 on JBoss (Japanese)

3,056 views

Published on

Published in: Technology
  • Be the first to comment

Wicket + EJB3 on JBoss (Japanese)

  1. 1. Wicket + EJB3 on JBoss サイオステクノロジー株式会社 武田正英
  2. 2. bose.techie.jp Contents 自己紹介 1 APサーバについて 2 JBossアプリケーションサーバについて 3 Wicket + EJB3でアプリを開発 4 Copyright © Masahide Takeda. All Rights Reserved
  3. 3. bose.techie.jp 名前:武田正英 id:bose999 所属:サイオステクノロジー㈱ OSSテクノロジーセンター 情報システム部門、運用・構築、開発を経験し、 プロジェクトマネージャー兼全工程要員(プレイングマネジャー) として経験を積んできました。 最近は過去の経験を生かして開発業務のコンサルタントとして 全国のシステム開発・運用の現場を支援して回ってます。 ブログ: http://bose.techie.jp 技術wiki: http://www26.atwiki.jp/memotech/ Copyright © Masahide Takeda. All Rights Reserved
  4. 4. bose.techie.jp APサーバについて 皆さんが使ってるAPサーバは? Tomcat ? WebLogic ? WebSphere ? Glass Fish ? Gernonimo ? Copyright © Masahide Takeda. All Rights Reserved
  5. 5. bose.techie.jp I use… 武田はJavaEE準拠のアプリケーションサーバ JBossを主に使用してます!! JBoss a division of Red Hat Copyright © Masahide Takeda. All Rights Reserved
  6. 6. bose.techie.jp JBoss Application Server5 POJO形式 Web Webサービス Java EJB もしくは コンテナ JPA JSF Messageing コンテナ Tomcat MBean形式の etc. Service ベース サービス JBoss JavaEE5準拠の機能を Application • JavaEE5準拠 Server 内包している。 5.0.1.GA org版 JBoss Application Server 5.0.1GAはJavaEE5に準拠した 各種機能をアプリケーションサーバとして提供している。 Copyright © Masahide Takeda. All Rights Reserved
  7. 7. bose.techie.jp マイクロコンテナ アーキテクチャ JBoss Application Server 5からはマイクロコンテナを採用。 - JBossAS4まではマイクロカーネルアーキテクチャだった。 MBean形式でサービスを作成する必要があったが、 5からはPOJOでサービスが作成可能になった。 - サービスの有効/無効もdeployするかしないかだけで 簡単にカスタマイズが可能。目的に応じてサーバ最適化が 簡単に行える。 - マイクロコンテナ上に色々なコンテナを構築できる。 例:Spring、Guice、JMX、OSGi Copyright © Masahide Takeda. All Rights Reserved
  8. 8. bose.techie.jp マイクロコンテナ アーキテクチャイメージ JBoss Application Server 5 マイクロコンテナ POJOによるサービス MBeanによるサービス JMX POJO POJO POJO MBean MBean MBean Copyright © Masahide Takeda. All Rights Reserved
  9. 9. bose.techie.jp JBossを使用する理由 例えばTomcatにJavaEEに存在する機能が 欲しくなったらどうします? あれ? この機能がない! v JBossなら必要な機能をサービスとしてデプロイするという簡単な方法で サーバ機能のカスタマイズが可能。 v JavaEEサーバなら当たり前に持っている機能使わなきゃ損です。 それとも作りますか? v WebコンテナにTomcatベースのものを使用しているので、Apacheとの連携等の Tomcatの知識が生かせます。 v マイクロコンテナアーキテクチャを採用していて、簡単にカスタマイズが可能。 最初はTomcat相当の機能で動かして必要に応じて機能追加もJBossなら簡単。 Copyright © Masahide Takeda. All Rights Reserved
  10. 10. bose.techie.jp Wicket + EJB3でアプリを開発 JavaEE5上のWicketによるWebアプリ開発 J2EEサーバがあれば余計な依存関係を使用しないでOK つまりxxxx.jarを色々用意しなくても アプリケーションサーバが持っているjarファイルと Wicket関連のjarファイルだけで開発を進める事が可能 あまり細かい事 やらなくてよくて 楽かも! Copyright © Masahide Takeda. All Rights Reserved
  11. 11. bose.techie.jp Wicket + EJB3でアプリを開発 でもEJBってうざくね? EJB3の事を言ってますか? EJB2の事ですか? EJB3のSessionBeanに関してはインタフェースを定義し てBeanを書くだけです。EntityBeanならPOJOです。 あれ?これどっかで見た気がしません? そう、DIコンテナで行っていくコーディングと あまり差が無いですね。。。 そして、EJB3.0はDIコンテナがやってくれる事を アプリケーションサーバがやってくれる感じなんです。 アノテーションでインジェクションまでしてくれます!! ただ制約があって Servlet、Managed Bean、EJBのみに EJBをDIしてくれるという仕様です。 Copyright © Masahide Takeda. All Rights Reserved
  12. 12. bose.techie.jp Wicket + EJB3でアプリを開発 あれ?その制約だとJSF用な感じなんだけど。。。 WicketにはServletにインジェクションさせて さらにそのEJBを手に入れるモジュールが存在するので 安心してください!! 例えば下記のように簡単なアノテーションでDI出来ちゃいます。 public class HomePage extends WebPage { @EJB(name=quot;wicket-ejb3-sample/LabelBeanImpl/localquot;) public LabelBean labelBean; @EJB(name=quot;wicket-ejb3-sample/LabelStateBeanImpl/localquot;) public LabelStateBean labelStateBean; Copyright © Masahide Takeda. All Rights Reserved
  13. 13. bose.techie.jp Wicket + EJB3でアプリを開発 あー、そうするとJPAをDB層に適用するといいのか! その通りです。Wicket以外はEJB3で決めると Wicket+JBossサーバの構成だけで開発が 進められます! WicketとWicket Stuffからwicket-contrib-javaeeを 入手して、JBoss5と開発環境すれば容易完了です。 さぁLet’s Programingですよ! wicket-contrib-javaee http://wicketstuff.org/confluence/display/STUFFWIKI/wicket-contrib-javaee Wicket on JBossサンプルコード(武田作成) http://www26.atwiki.jp/memotech/pages/84.html ※Wicket1.3系とWicket1.4rc2でのサンプルあり。JBoss4.2系で動かす方法も記載。 Copyright © Masahide Takeda. All Rights Reserved
  14. 14. bose.techie.jp 時間が無いので 更なる情報はWebでw http://www26.atwiki.jp/memotech/ をご参照下さい。 Copyright © Masahide Takeda. All Rights Reserved
  15. 15. bose.techie.jp

×