singleton セッション Bean の開発

Enterprise JavaBeans (EJB) 3.1 仕様によって導入された、singleton セッション Bean の Bean 実装クラスを作成します。EJB コンテナーは、singleton セッション Bean の 1 つのインスタンスのみを初期化し、そのインスタンスはすべてのクライアントによって共有されます。単一インスタンスはすべてのクライアントによって共有されるため、singleton セッション Bean は、特殊なライフサイクルおよび並行性セマンティクスを持ちます。

始める前に

実装する各アノテーションの継承ルールを必ずご理解ください。例えば、@ConcurrencyManagement アノテーションは singleton セッション Bean クラス上でのみコード化されます。 継承するクラス、またはクラス継承ツリーの上位クラスでは、@ConcurrencyManagement アノテーションを使用できません。

このタスクについて

singleton セッション Bean は、ビジネス・ローカル、ビジネス・リモート、および Web サービスのクライアント・ビューを持つことができます。EJB 2.1 のローカルまたはリモートのクライアント・ビューを持つことはできません。この singleton セッション Bean のサポートは、非推奨になった専有の開始 Bean の機能に置き換わるものです。
以下の例は、基本的な singleton セッション Bean を示しています。
public interface Configuration {
		Object get(String name);
		void set (String name, Object value);
}

@Singleton
public class ConfigurationBean implements Configuration {
		private Map<String, Object> settings = new HashMap<String, Object>();

		public Object get(String name) {
					return settings.get(name);
	}

		public void set(String name, Object value) {
		settings.put(name,value);
	}
}

他のエンタープライズ Bean タイプと同様、singleton セッション Bean の場合も、アノテーションを使用するのではなくデプロイメント記述子で、そのメタデータを宣言することができます。以下に例を示します。

<?xml version="1.0"?>
<ejb-jar
  xmlns="http://java.sun.com/xml/ns/javaee"
  xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
  xsi:schemaLocation="http://java.sun.com/xml/ns/javaee http://java.sun.com/xml/ns/javaee/ejb-jar_3_1.xsd"
  version="3.1"
>
  	<enterprise-beans>
    <ejb-name>ConfigurationBean</ejb-name>
    <business-local>com.ibm.example.Configuration</business-local>
    <ejb-class>com.ibm.example.ConfigurationBean</ejb-class>
    <session-type>Singleton</session-type>
  </enterprise-beans>
</ejb-jar>

手順


トピックのタイプを示すアイコン タスク・トピック



タイム・スタンプ・アイコン 最終更新: last_date
http://www14.software.ibm.com/webapp/wsbroker/redirect?version=cord&product=was-nd-mp&topic=tejb_ssb
ファイル名:tejb_ssb.html