作成 2002/11/9
更新 2002/11/24
作成中
ejb-jar_2_0.dtd に基づくリファレンスです。
DTDの説明を記述したり、ツール上で表示される名前やアイコンを指定します。
必須要素はありませんが、説明などはなるべく入れておいた方がよいでしょう。
<description>
説明を記述
<display-name>
表示名
<small-icon>
アイコン(小)
<large-icon>
アイコン(大)
ルート要素
<enterprise-beans>
EJB要素。
子要素に1つ以上のセッションBean、エンティティーBean、メッセージドリブンBeanを指定します。
<assembly-descriptor>
トランザクションとセキュリティー指定の要素
セッションBeanの要素
<ejb-name>
EJBの名前
単なる表示名と異なり、
他のEJB参照、リソース参照、トランザクション、セキュリティーメソッド指定などで、
この名前が使われます。
<home>
ホームインターフェイスの完全指定クラス名
<remote>
リモートコンポーネントインターフェイスの完全指定クラス名。
<local-home>
ローカルホームインターフェイスの完全指定クラス名
<local>
ローカルコンポーネントインターフェイスの完全指定クラス名。
<ejb-class>
EJBビーンクラスの完全指定クラス名。
<sesion-type>
セッションBeanのタイプ
ステートレスの場合はStateless、
ステートフルの場合はStateful
を指定します。
<transaction-type>
トランザクションのタイプ。
BMTの場合はBean、CMTの場合はContainerを指定します。
<?xml version="1.0" encoding="Shift_JIS"?> <!DOCTYPE ejb-jar PUBLIC '-//Sun Microsystems, Inc.//DTD Enterprise JavaBeans 2.0//EN' 'http://java.sun.com/dtd/ejb-jar_2_0.dtd'> <ejb-jar> <enterprise-beans> <session> <ejb-name>HelloEJB</ejb-name> <home>hello.HelloHome</home> <remote>hello.Hello</remote> <ejb-class>hello.HelloBean</ejb-class> <session-type>Stateless</session-type> <transaction-type>Container</transaction-type> </session> <session> <ejb-name>CounterEJB</ejb-name> <home>counter.CounterHome</home> <remote>counter.Counter</remote> <ejb-class>counter.CounterBean</ejb-class> <session-type>Stateful</session-type> <transaction-type>Container</transaction-type> </session> </enterprise-beans> </ejb-jar>
エンティティBeanの要素
<persistence-type>
永続化のタイプ
BMPはBean、
CMPContainer
を指定。
<prim-key-class>
プライマリキークラスの完全指定クラス名
<reentrant>
再入可能性
Trueにすると再入可能。
再入可能にした場合に問題におこる場合があるので、必要なければFalseにするべき。
<cmp-version>
CMPのバージョン
<abstract-schema-name>
SQL QLで使われる名前
<cmp-field>
CMPフィールド要素
<field-name>
フィールド名
<primkey-field>
プライマリキーのフィールド名
<query>
EJBクエリ言語の要素
<query-method>
<result-type-mapping>
<ejb-ql>
メッセージドリブンBeanの要素
<message-selector>
<acknowledge-mode>
確認応答の方法を指定。
指定できる値は以下
Auto-acknowlege
Dups-ok-Acknowkege
<message-driven-destination>
Beanがキューとトピックのどちら向けの設計かを指定
<destination-type>
Beanがサブスクライブするキューのタイプ
指定できる値は以下
javax.jms.Queue
javax.jms.Topic
<subscription-durability>
トピックのサブスクライブの種類を指定
指定できる値は以下
Durable
NonDurable
CMP間の関連を指定します。
環境エントリ要素
<env-entry-name>
環境エントリ名
<env-entry-type>
環境エントリのクラス名
<env-entry-value>
環境エントリの値
<ejb-ref>
EJB参照の要素
<ejb-local-ref>
ローカルEJB参照の要素
<ejb-ref-name>
EJB参照名
<ejb-ref-type>
参照するEJBのクラス名
<ejb-link>
EJBリンク
<security-role-ref>
セキュリティーロール参照
<role-name>
<role-link>
<security-identity>
<use-caller-identity>
<run-as>
<resource-ref>
リソース参照
<res-ref-name>
リソース参照の名前
<res-type>
リソース参照の型
<res-auth>
認証方法
<res-sharing-scope>
共有スコープ
<resource-env-ref>
リソース環境参照
コンテナトランザクションの要素
<ejb-name>
指定するEJB名を記述。
<method>
メソッドを指定
<method-intf>
ejb-nameの補足要素。
同じメソッドがHomeインターフェイスとRemoteインターフェイス
にある場合にインターフェイスを特定するために指定。
<method-name>
指定するメソッド名を記述。ワイルドカード(*)で全メソッド指定可
<method-params>
指定するメソッドが、複数ある場合、
メソッドの引数を子要素のmethod-paramで指定する。
<method-param>
メソッドの引数を指定。配列は[]
<trans-attribute>
トランザクション属性を記述
<exclude-list>
除外リストを指定
Beanに実装されているが、呼び出されたくないメソッドのリストを
指定します。既存のBeanを使う場合に必要外のメソッドを指定したり、
デバッグ用のメソッドを運用時に指定したりします(たぶん)。
<>