2.6.2 別名の付与規則
ここでは,Enterprise BeanおよびJ2EEリソースに別名を設定する場合の付与規則について説明します。
- 〈この項の構成〉
(1) 指定できる名称
別名に指定できる文字,および指定する場合の制約について説明します。
(a) 別名に指定できる文字
別名には,次の文字を使用した名称を指定できます。
-
英数字(A〜Z,a〜z,0〜9)
-
アンダースコア(_)
-
スラッシュ(/)
-
ピリオド(.)
-
ハイフン(-)
ただし,スラッシュは,パスの区切り文字として使用する場合だけ,名前に使用できます。
(b) 別名を指定するときの制約
次に示す名前は,別名として指定できません。指定した場合,J2EEアプリケーションまたはJ2EEリソースを開始できません。
-
名前の先頭または名前の末尾に,スラッシュ(/)またはピリオド(.)を指定した名前。
-
スラッシュ(/)だけ,またはピリオド(.)だけの名前。
-
スラッシュ(/)が連続している名前。
-
スラッシュ(/)とピリオド(.)が連続している名前。
-
「HITACHI_EJB」で始まる名前(大文字・小文字を区別する)。
-
文字列長が255バイトよりも長い名前。
このほか,J2EEリソースの場合,同じ名称が指定されたときには,あとから指定されている定義が有効になります。
(2) 別名の重複
Enterprise BeanおよびJ2EEリソースに別名を付ける場合の別名の重複可否を次の表に示します。
別名を付ける対象 |
リモートインタフェースを持つEnterprise Bean |
ローカルインタフェースを持つEnterprise Bean |
J2EEアプリケーションに含まれるリソースアダプタ |
J2EEリソース※1 |
---|---|---|---|---|
リモートインタフェースを持つEnterprise Bean |
× |
○※2 |
× |
× |
ローカルインタフェースを持つEnterprise Bean |
○※2 |
△ |
△ |
× |
J2EEアプリケーションに含まれるリソースアダプタ |
× |
△ |
△ |
× |
J2EEリソース※1 |
× |
× |
× |
× |
なお,重複できない組み合わせの場合,名称が完全に一致していなくても指定できないことがあります。
例を使用して説明します。
- 例
-
ネーミング管理機能では,CORBAネーミングサービスに登録されるオブジェクトを名前で管理しています。オブジェクトに付与された名前は「/」を階層構造の区切りとして解析し,ツリー構造で管理されます。ツリーのなかで,子ノードを持つノードでは,そのノードの下に新しくオブジェクトを登録できます。
次の図の,ノードA,B,C,Fは子ノードを持つノードです。このため,これらのノードの下には新しくオブジェクトを登録できます。
図2‒7 名称が完全に一致していなくても指定できない例 この状態で,別名「A/B/D」がすでに使用されている場合は,別名「A/B/I」を指定できます。
しかし,D,E,G,Hのようなノードには,新しくオブジェクトを登録することはできません。このため,別名「A/B/D/I」を指定することはできません。
重複できない別名を指定した場合,別名を指定した対象ごとに,次のタイミングでエラーが発生します。
-
Enterprise Beanの場合は,J2EEアプリケーションの開始に失敗します。
-
メールコンフィグレーション以外のJ2EEリソースの場合は,リソースの開始に失敗します。
-
メールコンフィグレーションの場合は,属性設定時にエラーが発生します。