Apdesigner プログラマーズガイド
目次 索引 前ページ次ページ

第2部 アプリケーション開発編> 第3章 Enterprise JavaBeans (EJB)を開発する> 3.4 EJB作成規約について

3.4.1 EJB2.0作成規約について

EJB2.0の主な規約について説明します。

[Session Beanの規約]

 

Session Bean

STATELESS

STATEFUL

Homeインタフェース

Remoteインタフェースがあれば必須

Remoteインタフェースがあれば必須

 

タイプ

インタフェース

インタフェース

extends

javax.ejb.EJBHome

javax.ejb.EJBHome

createメソッド

1個
Beanクラスにメソッド名とパラメタが対応するejbCreateメソッドが必要

1個以上
Beanクラスにメソッド名とパラメタが対応するejbCreateメソッドが必要

 

メソッド名

create

create+任意

パラメタ

なし

任意

復帰値

Remoteインタフェース

Remoteインタフェース

throws句

対応するejbCreateメソッドのthrows句に含まれるすべての例外
java.rmi.RemoteException
javax.ejb.CreateException

対応するejbCreateメソッドのthrows句に含まれるすべての例外
java.rmi.RemoteException
javax.ejb.CreateException

Local Homeインタフェース

Localインタフェースがあれば必須

Localインタフェースがあれば必須

 

タイプ

インタフェース

インタフェース

extends

javax.ejb.EJBLocalHome

javax.ejb.EJBLocalHome

createメソッド

1個
Beanクラスにメソッド名とパラメタが対応するejbCreateメソッドが必要

1個以上
Beanクラスにメソッド名とパラメタが対応するejbCreateメソッドが必要

 

メソッド名

create

create+任意

パラメタ

なし

任意

復帰値

Localインタフェース

Localインタフェース

throws句

対応するejbCreateメソッドのthrows句に含まれるすべての例外
javax.ejb.CreateException
java.rmi.RemoteException禁止

対応するejbCreateメソッドのthrows句に含まれるすべての例外
javax.ejb.CreateException
java.rmi.RemoteException禁止

Remoteインタフェース

RemoteまたはLocalインタフェース必須

RemoteまたはLocalインタフェース必須

 

タイプ

インタフェース

インタフェース

extends

javax.ejb.EJBObject

javax.ejb.EJBObject

ビジネスメソッド

0個以上
Beanクラスにメソッド名、パラメタ、復帰値が同じビジネスメソッドが必要

0個以上
Beanクラスにメソッド名、パラメタ、復帰値が同じビジネスメソッドが必要

 

メソッド名

任意

任意

パラメタ

任意

任意

復帰値

任意

任意

throws句

Beanクラスの対応するビジネスメソッドのthrows句に含まれるすべての例外
java.rmi.RemoteException

Beanクラスの対応するビジネスメソッドのthrows句に含まれるすべての例外
java.rmi.RemoteException

Localインタフェース

RemoteまたはLocalインタフェース必須

RemoteまたはLocalインタフェース必須

 

タイプ

インタフェース

インタフェース

extends

javax.ejb.EJBLocalObject

javax.ejb.EJBLocalObject

ビジネスメソッド

0以上
Beanクラスにメソッド名、パラメタ、復帰値が同じビジネスメソッドが必要

0以上
Beanクラスにメソッド名、パラメタ、復帰値が同じビジネスメソッドが必要

 

メソッド名

任意

任意

パラメタ

任意

任意

復帰値

任意

任意

throws句

Beanクラスの対応するビジネスメソッドのthrows句に含まれるすべての例外java.rmi.RemoteExceptionは禁止

Beanクラスの対応するビジネスメソッドのthrows句に含まれるすべての例外java.rmi.RemoteExceptionは禁止

Beanクラス

必須

必須

 

タイプ

クラス

クラス

public

必須

必須

extends

implements

javax.ejb.SessionBean
javax.ejb.SessionSynchronizationは不可

javax.ejb.SessionBean

abstract

×

×

final

×

×

ejbCreateメソッド

1個
Homeインタフェースにメソッド名とパラメタが対応するcreateメソッドが必要

1個以上
Homeインタフェースにメソッド名とパラメタが対応するcreateメソッドが必要

 

メソッド名

ejbCreate

ejbCreate+任意

public

必須

必須

final

×

×

static

×

×

パラメタ

なし

任意

復帰値

void

void

throws句

任意
java.rmi.RemoteExceptionは推奨しない

任意
java.rmi.RemoteExceptionは推奨しない

ビジネスメソッド

0個以上
RemoteまたはLocalインタフェースに、メソッド名、パラメタ、復帰値が同じビジネスメソッドが必要

0個以上
RemoteまたはLocalインタフェースに、メソッド名、パラメタ、復帰値が同じビジネスメソッドが必要

 

メソッド名

任意

任意

public

必須

必須

final

×

×

static

×

×

パラメタ

任意

任意

復帰値

任意

任意

throws句

任意
java.rmi.RemoteExceptionは推奨しない

任意
java.rmi.RemoteExceptionは推奨しない

finalizeメソッド

不可

不可

コンストラクタ

引数なしpublicコンストラクタは必須

引数なしpublicコンストラクタは必須

×: 使用できません。

[Entity Beanの規約]

 

Entity Bean

CMP(Container-managed persistence)

BMP(Bean-managed persistence)

Homeインタフェース

Remoteインタフェースがあれば必須

Remoteインタフェースがあれば必須

 

タイプ

インタフェース

インタフェース

extends

javax.ejb.EJBHome

javax.ejb.EJBHome

createメソッド

0個以上
Beanクラスにメソッド名とパラメタが対応するejbCreateメソッドが必要

0個以上
Beanクラスにメソッド名とパラメタが対応するejbCreateメソッドが必要

 

メソッド名

create+任意

create+任意

パラメタ

任意

任意

復帰値

Remoteインタフェース

Remoteインタフェース

throws句

対応するejbCreateとejbPostCreateメソッドのthrows句に含まれるすべての例外java.rmi.RemoteException
javax.ejb.CreateException

対応するejbCreateとejbPostCreateメソッドのthrows句に含まれるすべての例外
java.rmi.RemoteException
javax.ejb.CreateException

homeメソッド

0個以上
Beanクラスにメソッド名、パラメタ、復帰値が対応するejbHomeメソッドが必要

0個以上
Beanクラスにメソッド名、パラメタ、復帰値が対応するejbHomeメソッドが必要

 

メソッド名

任意(create、find、removeメソッドとの衝突は禁止)

任意(create、find、removeメソッドとの衝突は禁止)

パラメタ

任意

任意

復帰値

任意

任意

throws句

対応するejbHomeメソッドのthrows句に含まれるすべての例外java.rmi.RemoteException

対応するejbHomeメソッドのthrows句に含まれるすべての例外java.rmi.RemoteException

finderメソッド

0個以上

0個以上
Beanクラスにメソッド名、パラメタが対応するejbFindメソッドが必要

 

メソッド名

find+任意

find+任意

パラメタ

任意

任意

復帰値

Remoteインタフェースまたはそのコレクション

Remoteインタフェースまたはそのコレクション

throws句

java.rmi.RemoteException
javax.ejb.FinderException

java.rmi.RemoteException
javax.ejb.FinderException
対応するejbFindメソッドのthrows句に含まれるすべての例外

findByPrimaryKeyメソッド

1個

1個
Beanクラスに対応するejbFindByPrimaryKeyメソッドが必要

 

メソッド名

findByPrimaryKey

findByPrimaryKey

パラメタ

Primary Keyクラス

Primary Keyクラス

復帰値

Remoteインタフェース

Remoteインタフェース

throws句

java.rmi.RemoteException
javax.ejb.FinderException

java.rmi.RemoteException
javax.ejb.FinderException
対応するejbFindメソッドのthrows句に含まれるすべての例外

Local Homeインタフェース

Localインタフェースがあれば必須

Localインタフェースがあれば必須

 

タイプ

インタフェース

インタフェース

extends

javax.ejb.EJBLocalHome

javax.ejb.EJBLocalHome

createメソッド

0個以上
Beanクラスにメソッド名とパラメタが対応するejbCreateメソッドが必要

0個以上
Beanクラスにメソッド名とパラメタが対応するejbCreateメソッドが必要

 

メソッド名

create+任意

create+任意

パラメタ

任意

任意

復帰値

Localインタフェース

Localインタフェース

throws句

対応するejbCreateとejbPostCreateメソッドのthrows句に含まれるすべての例外
javax.ejb.CreateException
java.rmi.RemoteExceptionは禁止

対応するejbCreateとejbPostCreateメソッドのthrows句に含まれるすべての例外
javax.ejb.CreateException
java.rmi.RemoteExceptionは禁止

homeメソッド

0個以上
Beanクラスにメソッド名、パラメタ、復帰値が対応するejbHomeメソッドが必要

0個以上
Beanクラスにメソッド名、パラメタ、復帰値が対応するejbHomeメソッドが必要

 

メソッド名

任意(create、find、removeメソッドとの衝突は禁止)

任意(create、find、removeメソッドとの衝突は禁止)

パラメタ

任意

任意

復帰値

任意

任意

throws句

java.rmi.RemoteExceptionは禁止

java.rmi.RemoteExceptionは禁止

finderメソッド

0個以上

0個以上
Beanクラスにメソッド名、パラメタが対応するejbFindメソッドが必要

 

メソッド名

find+任意

find+任意

パラメタ

任意

任意

復帰値

Localインタフェースまたはそのコレクション

Localインタフェースまたはそのコレクション

throws句

javax.ejb.FinderException
java.rmi.RemoteExceptionは禁止

javax.ejb.FinderException
対応するejbFindメソッドのthrows句に含まれるすべての例外java.rmi.RemoteExceptionは禁止

findByPrimaryKeyメソッド

1個

1個
Beanクラスに対応するejbFindByPrimaryKeyメソッドが必要

 

メソッド名

findByPrimaryKey

findByPrimaryKey

パラメタ

Primary Keyクラス

Primary Keyクラス

復帰値

Localインタフェース

Localインタフェース

throws句

javax.ejb.FinderException
java.rmi.RemoteExceptionは禁止

javax.ejb.FinderException
対応するejbFindメソッドのthrows句に含まれるすべての例外java.rmi.RemoteExceptionは禁止

Remoteインタフェース

RemoteまたはLocalインタフェース必須

RemoteまたはLocalインタフェース必須

 

タイプ

インタフェース

インタフェース

extends

javax.ejb.EJBObject

javax.ejb.EJBObject

ビジネスメソッド

0個以上
Beanクラスにメソッド名、パラメタ、復帰値が同じビジネスメソッドが必要

0個以上
Beanクラスにメソッド名、パラメタ、復帰値が同じビジネスメソッドが必要

 

メソッド名

任意

任意

パラメタ

任意

任意

復帰値

任意

任意

throws句

java.rmi.RemoteException
対応するビジネスメソッドのthrows句に含まれるすべての例外

java.rmi.RemoteException
対応するビジネスメソッドのthrows句に含まれるすべての例外

Localインタフェース

RemoteまたはLocalインタフェース必須

RemoteまたはLocalインタフェース必須

 

タイプ

インタフェース

インタフェース

extends

javax.ejb.EJBLocalObject

javax.ejb.EJBLocalObject

ビジネスメソッド

0以上

0以上

 

メソッド名

任意

任意

パラメタ

任意

任意

復帰値

任意

任意

throws句

対応するビジネスメソッドのthrows句に含まれるすべての例外
java.rmi.RemoteExceptionは禁止

対応するビジネスメソッドのthrows句に含まれるすべての例外
java.rmi.RemoteExceptionは禁止

Beanクラス

必須

必須

 

タイプ

クラス

クラス

public

必須

必須

extends

implements

javax.ejb.EntityBean

javax.ejb.EntityBean

abstract

必須

×

final

×

ejbCreateメソッド

0個以上
Homeインタフェースにメソッド名、パラメタが対応するcreateメソッドが必要
メソッド名、パラメタが対応するejbPostCreateメソッドが必要

0個以上
Homeインタフェースにメソッド名、パラメタが対応するcreateメソッドが必要
メソッド名、パラメタが対応するejbPostCreateメソッドが必要

 

メソッド名

ejbCreate+任意

ejbCreate+任意

public

必須

必須

final

×

×

static

×

×

パラメタ

任意

任意

復帰値

Primary Keyクラス

Primary Keyクラス

throws句

任意
javax.ejb.CreateException
java.rmi.RemoteExceptionは禁止

任意
java.rmi.RemoteExceptionは推奨しない

ejbPostCreateメソッド

0個以上
メソッド名、パラメタが対応するejbCreateメソッドが必要

0個以上
メソッド名、パラメタが対応するejbCreateメソッドが必要

 

メソッド名

ejbPostCreate+任意

ejbPostCreate+任意

public

必須

必須

final

×

×

static

×

×

パラメタ

任意

任意

復帰値

void

void

throws句

任意
java.rmi.RemoteExceptionは禁止

任意
java.rmi.RemoteExceptionは推奨しない

ejbFindメソッド

0個以上
Homeインタフェースにメソッド名、パラメタが対応するfinderメソッドが必要

 

メソッド名

ejbFind+任意

public

必須

final

×

static

×

パラメタ

任意

復帰値

Primary Keyクラスまたはそのコレクション

throws句

任意
java.rmi.RemoteExceptionは推奨しない

ejbFindByPrimaryKeyメソッド

1個
Homeインタフェースに対応するfindByPrimaryKeyメソッドが必要

 

メソッド名

ejbFindByPrimaryKey

public

必須

final

×

static

×

パラメタ

Primary Keyクラス

復帰値

-

Primary Keyクラス

throws句

任意
java.rmi.RemoteExceptionは推奨しない

アクセッサメソッド(get)

0個以上

 

メソッド名

get+任意(set+任意とセット)
deployment descriptorの<cmp-field>または<cmr-field>と対応する

public

必須

abstract

必須

パラメタ

なし

復帰値

任意

アクセッサメソッド(set)

0個以上

 

メソッド名

set+任意(get+任意とセット)
deployment descriptorの<cmp-field>または<cmr-field>と対応する

public

必須

abstract

必須

パラメタ

任意1つ

復帰値

void

ejbSelectメソッド

0個以上

 

メソッド名

ejbSelect+任意

public

必須

abstract

必須

パラメタ

任意

復帰値

Entity Beanクラス以外

throws句

javax.ejb.FinderException
その他の例外可

ejbHomeメソッド

0個以上
Homeインタフェースにメソッド名、パラメタ、復帰値が対応するhomeメソッドが必要

0個以上
Homeインタフェースにメソッド名、パラメタ、復帰値が対応するhomeメソッドが必要

 

メソッド名

ejbHome+任意(先頭大文字)

ejbHome+任意(先頭大文字)

public

必須

必須

static

×

×

パラメタ

任意

任意

復帰値

任意

任意

throws句

任意
java.rmi.RemoteExceptionは禁止

任意
java.rmi.RemoteExceptionは禁止

ビジネスメソッド

0個以上
RemoteまたはLocalインタフェースに、メソッド名、パラメタ、復帰値が同じビジネスメソッドが必要

0個以上
RemoteまたはLocalインタフェースに、メソッド名、パラメタ、復帰値が同じビジネスメソッドが必要

 

メソッド名

任意

任意

public

必須

必須

final

×

×

static

×

×

パラメタ

任意

任意

復帰値

任意

任意

throws句

任意
java.rmi.RemoteExceptionは禁止

任意
java.rmi.RemoteExceptionは推奨しない

finalizeメソッド

不可

不可

コンストラクタ

引数なしpublicコンストラクタは必須

引数なしpublicコンストラクタは必須

CMPフィールド

deployment descriptorの<cmp-field>と対応する

Primary Keyクラス

deployment descriptorの<prim-key-class>と対応する

deployment descriptorの<prim-key-class>と対応する

 

任意のクラス

任意のクラス

public

複数フィールドにマップされる場合は必須

フィールド

複数フィールドにマップされる場合はpublic必須
複数フィールドにマップされる場合はcontainer-managed fieldの名前のフィールドは必須

コンストラクタ

複数フィールドにマップされる場合は引数なしpublic必須

hashCodeメソッド

必須

必須

equalsメソッド

必須

必須

×: 使用できません。
−: 無効になります。

[Message-driven Beanの規約]

 

Message-driven Bean

Beanクラス

必須

 

タイプ

クラス

public

必須

extends

implements

javax.ejb.MessageDrivenBean
javax.jms.MessageListener

abstract

×

final

×

ejbCreateメソッド

1個

 

メソッド名

ejbCreate

public

必須

final

×

static

×

パラメタ

なし

復帰値

void

throws句

アプリケーション例外は禁止

ejbRemoveメソッド

1個

 

メソッド名

ejbRemove

public

必須

final

×

static

×

パラメタ

なし

復帰値

void

throws句

アプリケーション例外は禁止

onMessageメソッド

1個

 

メソッド名

onMessage

public

必須

final

×

static

×

パラメタ

javax.jms.Message

復帰値

void

throws句

アプリケーション例外は禁止

finalizeメソッド

不可

コンストラクタ

引数なしpublic必須

×: 使用できません。


目次 索引 前ページ次ページ

All Rights Reserved, Copyright (C) 富士通株式会社 1998-2006