Seasar DI Container with AOP

S2標準dicon

目次

概要

Seasar2は,多くのアプリケーションで再利用可能なdiconファイルを複数提供しています.アプリケーションはこれらの標準diconを必要に応じて利用することができます.標準diconはSeasar2のJarファイルに含まれているため,diconファイルをクラスパス上に配置しなくてもインクルードするだけで利用することができます.

このドキュメントでは,これらの標準diconファイルについて説明します.

標準dicon一覧

カテゴリ別一覧

標準diconのカテゴリ別一覧を以下に示します.

カテゴリ diconファイル Jarファイル
AOPサポート aop.dicon s2-framework
J2EEサポート j2ee.dicon s2-extension
jta.dicon s2-extension
ejbtx.dicon s2-extension
JavaEE5サポート javaee5.dicon s2-tiger
ejb3tx.dicon s2-tiger
jpa-support.dicon s2-tiger
Daoサポート jdbc-extension.dicon s2-extension
Dxoサポート dxo.dicon s2-extension
SMART deployサポート hotdeploy.dicon s2-framework
warmdeploy.dicon s2-framework
cooldeploy.dicon s2-framework
cooldeploy-autoregister.dicon s2-framework
default-customizer.dicon s2-framework
std-customizer.dicon s2-framework

Jar別一覧

標準diconを含んでいるSeasar2のJarファイル別の一覧を以下に示します.

Jarファイル diconファイル
s2-framework aop.dicon
cooldeploy.dicon
cooldeploy-autoregister.dicon
default-customizer.dicon
hotdeploy.dicon
std-customizer.dicon
warmdeploy.dicon
s2-extension dxo.dicon
ejbtx.dicon
j2ee.dicon
jdbc-extension.dicon
jta.dicon
s2-tiger ejb3tx.dicon
javaee5.dicon
jpa-support.dicon

インクルード関係

標準diconが他のdiconからどのようにインクルードされるか,他のdiconをどのようにインクルードするかを以下に示します.斜体はSeasar2のJarには含まれていない,非標準のdiconです.

AOPサポート

S2AOPを利用するための標準diconファイルについて説明します.

aop.dicon

aop.diconはS2AOPが提供するTraceInterceptorなどの標準的なインターセプタの設定を提供するdiconファイルです.

S2AOPが提供するインターセプタについては「AOP」-「S2AOPで用意されているInterceptor」を参照してください.

名前空間

aop

依存するdicon

aop.diconが依存するdiconはありません.

利用方法

aop.diconは通常app.diconでインクルードして利用します.

定義

aop.diconの最新版の定義内容を以下に示します (リリース済みの内容とは異なる場合があります).

J2EEサポート

J2EE 1.4の機能を利用するための標準diconファイルについて説明します.

j2ee.dicon

j2ee.diconはJ2EE 1.4の機能を提供する設定のルートとなるdiconファイルです.

j2ee.dicon自身にはS2Txが提供する宣言的トランザクションを利用するためのインターセプタが設定されています.宣言的トランザクションについては「トランザクションの自動制御」を参照してください.

名前空間

j2ee

依存するdicon

j2ee.diconが依存するdiconファイルを以下に示します.

jta.dicon
JTAを利用するための標準diconファイルです.
jdbc.dicon
Seasar2が提供するコネクションプールを利用するためのdiconファイルです.
Seasar2のJarファイルには含まれていません.Seasar2配布ファイルのseasr2/resources/jdbc.diconを利用者の環境に合わせて修正して利用してください.詳細は「コネクションプーリング」を参照してください.

利用方法

j2ee.diconは通常app.diconでインクルードして利用します.

定義

j2ee.diconの最新版の定義内容を以下に示します (リリース済みの内容とは異なる場合があります).

jta.dicon

jta.diconはJTA (Java Transaction API) を利用するためのdiconファイルです.

標準のjta.diconはSeasar2の提供するJTA実装を利用するように設定されています.アプリケーションサーバの提供するJTA実装を利用する場合は「アプリケーションサーバのJTAとコネクションプールを使う」を参照してください.

名前空間

jta

依存するdicon

jta.diconが依存するdiconファイルはありません.

利用方法

jta.diconは通常j2ee.diconからインクルードされます.j2ee.diconをインクルードしていれば利用者が直接インクルードする必要はありません.

定義

jta.diconの最新版の定義内容を以下に示します (リリース済みの内容とは異なる場合があります).

ejbtx.dicon

ejbtx.diconはEJB 2.x互換の宣言的トランザクションを利用するためのdiconファイルです.

EJB 2.x互換の宣言的トランザクションについては「トランザクションの自動制御」-「EJB互換のAdvice」を参照してください.

名前空間

ejbtx

依存するdicon

ebjtx.diconが依存するdiconファイルを以下に示します.

j2ee.dicon
J2EEを利用するための標準diconファイルです.

利用方法

ejbtx.diconは通常app.diconからインクルードして利用します.

定義

ejbtx.diconの最新版の定義内容を以下に示します (リリース済みの内容とは異なる場合があります).

JavaEE5サポート

JavaEE 5.0の機能を利用するための標準diconファイルについて説明します.

javaee5.dicon

javaee5.diconはJavaEE 5.0の機能を提供する設定のルートとなるdiconファイルです.

j2ee.dicon自身にはコンポーネント定義はなく,他のJavaEE5サポートに必要な標準diconファイルをインクルードしているだけです.

名前空間

名前空間はありません.

依存するdicon

javaee5.diconが依存するdiconファイルを以下に示します.

j2ee.dicon
J2EE 1.4を利用するための標準diconファイルです.
jpa-support.dicon
Seasar2のJPAサポート機能を利用するためのdiconファイルです.
S2Hibernate-JPA・S2TopLink-JPAから利用されます.
ejb3tx.dicon
EJB3の宣言的トランザクションを利用するためのdiconファイルです.

利用方法

javaee5.diconは通常app.diconでインクルードして利用します.

定義

javaee5.diconの最新版の定義内容を以下に示します (リリース済みの内容とは異なる場合があります).

jpa-support.dicon

jpa-support.diconはSeasar2のJPAサポート機能を利用するためのdiconファイルです.

S2Hibernate-JPA・S2TopLink-JPAから利用されます.

名前空間

jpa

依存するdicon

jpa-support.diconが依存するdiconファイルを以下に示します.

j2ee.dicon
J2EE 1.4を利用するための標準diconファイルです.

利用方法

jpa-support.diconは通常javaee5.diconからインクルードされます.javaee5.diconをインクルードしていれば利用者が直接インクルードする必要はありません.

定義

javaee5.diconの最新版の定義内容を以下に示します (リリース済みの内容とは異なる場合があります).

ejb3tx.dicon

ejb3tx.diconはEJB3の宣言的トランザクションを利用するためのdiconファイルです.

EJB3の宣言的トランザクションについては「EJB3.0 Simplified API」を参照してください.

名前空間

ejb3tx

依存するdicon

ejb3tx.diconが依存するdiconを以下に示します.

j2ee.dicon
J2EEを利用するための標準diconファイルです.

利用方法

ejb3tx.diconは通常javaee5.diconからインクルードされます.javaee5.diconをインクルードしていれば利用者が直接インクルードする必要はありません.

定義

ejb3tx.diconの最新版の定義内容を以下に示します (リリース済みの内容とは異なる場合があります).

Daoサポート

Daoをサポートするための標準diconファイルについて説明します.

jdbc-extension.dicon

jdbc-extension.diconはUujiやKuina-Daoから利用されるコンポーネントの設定を提供するdiconファイルです.

jdbc-extension.diconに定義されているコンポーネントは,Daoインタフェースのパッケージから対応するJDBC DataSourceを取得するためにUujiやKuina-Daoから利用されます.

名前空間

名前空間はありません.

依存するdicon

jdbc-extension.diconが依存するdiconはありません.

利用方法

jdbc-extension.diconは通常jdbc.diconでインクルードして利用します.UujiおよびKuina-Daoを利用しない場合はインクルードする必要はありません.

定義

jdbc-extension.diconの最新版の定義内容を以下に示します (リリース済みの内容とは異なる場合があります).

Dxoサポート

S2Dxoを利用するための標準diconファイルについて説明します.

dxo.dicon

dxo.diconはS2Dxoがを利用するために必要なコンポーネントを定義したdiconファイルです.

S2Dxoの利用方法については「S2Dxo」を参照してください.

名前空間

dxo

依存するdicon

dxo.diconが依存するdiconはありません.

利用方法

dxo.diconは通常app.diconでインクルードして利用します.

定義

dxo.diconの最新版の定義内容を以下に示します (リリース済みの内容とは異なる場合があります).

SMART deployサポート

SMART deployを利用するための標準diconファイルについて説明します.

hotdeploy.dicon

hotdeploy.diconはSMART deployの一種であるHOT deployを利用するためのdiconファイルです.

HOT deployについては「SMART deploy」-「HOT deploy」を参照してください.

名前空間

名前空間はありません.

依存するdicon

hotdeploy.diconが依存するdiconファイルを以下に示します.

convention.dicon
ネーミング規約を設定したdiconファイルです.
creator.dicon
ネーミング規約に従ってコンポーネント定義を作成するためのdiconファイルです.
customizer.dicon
作成されたコンポーネント定義をカスタマイズするためのdiconファイルです.

利用方法

hotdeploy.diconは通常s2container.diconでインクルードして利用します.通常は次のように条件インクルードを利用してcooldeploy.diconまたはwarmdeploy.diconと切り替えられるようにします.

<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE components PUBLIC "-//SEASAR//DTD S2Container 2.4//EN" 
        "http://www.seasar.org/dtd/components24.dtd">
<components>
        <include condition="#ENV == 'ut'" path="hotdeploy.dicon"/>
        <include condition="#ENV != 'ut'" path="cooldeploy.dicon"/>
</components>

定義

hotdeploy.diconの最新版の定義内容を以下に示します (リリース済みの内容とは異なる場合があります).

warmdeploy.dicon

warmdeploy.diconはSMART deployの一種であるWARM deployを利用するためのdiconファイルです.

WARM deployについては「SMART deploy」-「WARM deploy」を参照してください.

名前空間

名前空間はありません.

依存するdicon

warmdeploy.diconが依存するdiconファイルを以下に示します.

convention.dicon
ネーミング規約を設定したdiconファイルです.
creator.dicon
ネーミング規約に従ってコンポーネント定義を作成するためのdiconファイルです.
customizer.dicon
作成されたコンポーネント定義をカスタマイズするためのdiconファイルです.

利用方法

warmdeploy.diconは通常s2container.diconでインクルードして利用します.通常は次のように条件インクルードを利用してhotdeploy.diconと切り替えられるようにします.

<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE components PUBLIC "-//SEASAR//DTD S2Container 2.4//EN" 
        "http://www.seasar.org/dtd/components24.dtd">
<components>
        <include condition="#ENV == 'ut'" path="hotdeploy.dicon"/>
        <include condition="#ENV != 'ut'" path="warmdeploy.dicon"/>
</components>

定義

warmdeploy.diconの最新版の定義内容を以下に示します (リリース済みの内容とは異なる場合があります).

cooldeploy.dicon

cooldeploy.diconはSMART deployの一種であるCOOL deployを利用するためのdiconファイルです.

COOL deployについては「SMART deploy」-「COOL deploy」を参照してください.

名前空間

名前空間はありません.

依存するdicon

cooldeploy.diconが依存するdiconファイルはありません.

利用方法

cooldeploy.diconは通常s2container.diconでインクルードして利用します.通常は次のように条件インクルードを利用してhotdeploy.diconを切り替えられるようにします.

<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE components PUBLIC "-//SEASAR//DTD S2Container 2.4//EN" 
        "http://www.seasar.org/dtd/components24.dtd">
<components>
        <include condition="#ENV == 'ut'" path="hotdeploy.dicon"/>
        <include condition="#ENV != 'ut'" path="cooldeploy.dicon"/>
</components>

定義

cooldeploy.diconの最新版の定義内容を以下に示します (リリース済みの内容とは異なる場合があります).

cooldeploy-autoregister.dicon

cooldeploy-autoregister.diconはSMART deployの一種であるCOOL deployを利用するためのdiconファイルです.

COOL deployについては「SMART deploy」-「COOL deploy」を参照してください.

名前空間

名前空間はありません.

依存するdicon

cooldeploy-autoregister.diconが依存するdiconファイルを以下に示します.

convention.dicon
ネーミング規約を設定したdiconファイルです.
creator.dicon
ネーミング規約に従ってコンポーネント定義を作成するためのdiconファイルです.
customizer.dicon
作成されたコンポーネント定義をカスタマイズするためのdiconファイルです.

利用方法

cooldeploy-autoregister.diconは通常cooldeploy.diconに設定されたコンポーネントによってapp.diconにインクルード要素が追加されます.利用者が直接インクルードする必要はありません.

定義

cooldeploy-autoregister.diconの最新版の定義内容を以下に示します (リリース済みの内容とは異なる場合があります).

default-customizer.dicon

default-customizer.diconはSMART deployで使用されるCustomizerのデフォルトを定義したdiconファイルです.

default-customizer.diconに定義されているCustomizerは全て空の内容になっており,何もカスタマイズしません.

名前空間

名前空間はありません.

依存するdicon

default-customizer.diconが依存するdiconファイルを以下に示します.

std-customizer.dicon
標準的なCustomizerを定義したdiconファイルです.

利用方法

default-customizer.diconは通常customizer.diconからインクルードして利用します.利用者が独自にコンポーネント定義をカスタマイズしたいCustomizerをcustomizer.diconに定義することで,default-customizer.diconの設定を上書きすることができます (default-customizer.diconに定義されたコンポーネントよりもcustomizer.diconに定義されたコンポーネントが優先的に使用されます).

定義

default-customizer.diconの最新版の定義内容を以下に示します (リリース済みの内容とは異なる場合があります).

std-customizer.dicon

std-customizer.diconはSMART deployで使用される標準的なCustomizerを定義したdiconファイルです.

default-customizer.diconに定義されているCustomizerはcustomizer.diconで定義されるCustomizerChainに組み込まれるコンポーネントを提供します.

名前空間

名前空間はありません.

依存するdicon

default-customizer.diconが依存するdiconファイルはありません.

利用方法

std-customizer.diconは通常default-customizer.diconからインクルードされます.利用者はcustomizer.diconからdefault-customizer.diconをインクルードすることにより,std-customizer.diconに定義されたCustomizerを利用することができます.

定義

std-customizer.diconの最新版の定義内容を以下に示します (リリース済みの内容とは異なる場合があります).

標準diconのカスタマイズ

標準diconは必要に応じてカスタマイズして利用することができます.

標準diconのカスタマイズは,変更したdiconファイルをJarファイルより優先されるクラスパス上に配置してください.Webアプリケーションでは通常WEB-INF/classes直下に配置します.

カスタマイズしたdiconをアプリケーションのJarファイルに含むことは推奨しません.Webアプリケーションの場合,WEB-INF/libにある複数のJarファイルがどのような順序でクラスパスに設定されるかはServlet仕様では未定義であり,同名のdiconファイルがどのJarから読み込まれるか制御できないことに注意してください.

利用者が作成するdiconファイル

一般的なアプリケーションで利用者が作成する主なdiconファイルを以下に示します.

  • app.dicon
  • app-aop.dicon
  • jdbc.dicon
  • s2container.dicon
  • convention.dicon
  • creator.dicon
  • customizer.dicon

上記以外に利用するプロダクトによって必要となるdiconファイルがある場合があります.詳細は利用するプロダクトのドキュメントを参照してください.

app.dicon

アプリケーションを構成するルートとなるdiconファイルです.

名前空間

通常名前空間は必要ありません.

依存するdicon

必要に応じてaop.diconj2ee.diconなど他のdiconファイルをインクルードします.

app-aop.dicon

アプリケーション固有のアスペクトを定義するdiconファイルで,アプリケーションで独自のインターセプタを利用する場合に必要となります.

名前空間

通常名前空間は必要ありません.

依存するdicon

app-aop.diconは通常aop.diconをインクルードします.

利用方法

app-aop.diconは通常app.diconからインクルードされます.

jdbc.dicon

jdbc.diconはJDBCデータソースを定義するdiconファイルで,S2JDBCやS2Dao・Uuji・Kuina-Daoなどを利用してRDBMSにアクセスする場合に必要となります.

通常はSeasar2配布ファイルのresources/jdbc.diconを利用者の環境に合わせて修正して利用してください.

名前空間

jdbc

依存するdicon

UujiまたはKuina-Daoを利用する場合はjdbc.diconからjdbc-extension.diconをインクルードしてください.

利用方法

jdbc.diconj2ee.diconからインクルードされます.RDBMSを利用しない場合でも,j2ee.diconを利用する場合はjdbc.diconが必要になります.このような場合は<component>要素がない,空のdiconファイルをjdbc.diconとして用意してください.

定義

Seasar2配布ファイルのresource/jdbc.diconの最新版の定義内容を以下に示します (リリース済みの内容とは異なる場合があります).

s2container.dicon

s2container.diconはS2コンテナをカスタマイズするための設定を定義するdiconファイルで,SMART deployを利用する場合に必要となります.

名前空間

通常名前空間は必要ありません.

依存するdicon

SMART deployを利用する場合,s2container.diconからはhotdeploy.dicon・warmdeploy.dicon・cooldeploy.diconのいずれか一つあるいは二つをインクルードします.二つをインクルードする場合は条件インクルードを利用します.利用例はhotdeploy.diconwarmdeploy.diconcooldeploy.diconの項目を参照してください.

利用方法

s2container.diconはS2コンテナをカスタマイズするためのルートとなるdiconファイルで,他のdiconファイルからはインクルードされません.app.diconとは別のコンテナ階層を構築します.

convention.dicon

convention.diconはアプリケーションのネーミング規約を定義するdiconファイルで,SMART deployを利用する場合に必要となります.

通常はSeasar2配布ファイルのresources/convention.diconを利用者の環境に合わせて修正して利用してください.

名前空間

通常名前空間は必要ありません.

利用方法

convention.diconhotdeploy.dicon・warmdeploy.dicon・cooldeploy-autoregister.diconなどからインクルードされます.

定義

Seasar2配布ファイルのresource/convention.diconの最新版の定義内容を以下に示します (リリース済みの内容とは異なる場合があります).

creator.dicon

creator.diconはネーミング規約に基づいてコンポーネント定義を作成するCreatorを定義するdiconファイルで,SMART deployを利用する場合に必要となります.

通常はSeasar2配布ファイルのresources/creator.diconを利用者の環境に合わせて修正して利用してください.

名前空間

通常名前空間は必要ありません.

依存するdicon

通常creator.diconconvention.dicon・customizer.diconをインクルードします.

利用方法

creator.diconhotdeploy.dicon・warmdeploy.dicon・cooldeploy-autoregister.diconなどからインクルードされます.

定義

Seasar2配布ファイルのresource/cretor.diconの最新版の定義内容を以下に示します (リリース済みの内容とは異なる場合があります).

customizer.dicon

customizer.diconはCreatorが作成したコンポーネント定義をカスタマイズするCustomizerを定義するdiconファイルで,SMART deployを利用する場合に必要となります.

通常はSeasar2配布ファイルのresources/customizer.diconを利用者の環境に合わせて修正して利用してください.

名前空間

通常名前空間は必要ありません.

customizer.diconhotdeploy.dicon・warmdeploy.dicon・cooldeploy-autoregister.diconなどからインクルードされます.

依存するdicon

customizer.diconは通常default-customizer.diconをインクルードします.

利用方法

customizer.diconhotdeploy.dicon・warmdeploy.dicon・cooldeploy-autoregister.diconなどからインクルードされます.

定義

Seasar2配布ファイルのresource/customizer.diconの最新版の定義内容を以下に示します (リリース済みの内容とは異なる場合があります).