Développement de beans session singleton

Créez une classe d'implémentation pour un bean session singleton introduit par la spécification Enterprise JavaBeans (EJB) 3.1.. Le conteneur EJB initialise une seule instance de bean session singleton et cette instance est partagée par tous les clients. Dans la mesure où une seule instance est partagée par tous les clients, les beans session singleton ont un cycle de vie spécial et une sémantique à accès concurrentiel.

Avant de commencer

Assurez-vous que vous comprenez les règles d'héritage pour chaque annotation implémentée. Par exemple, l'annotation @ConcurrencyManagement est codée dans la classe de bean session singleton uniquement. Vous ne pouvez pas utiliser l'annotation @ConcurrencyManagement dans la classe qu'elle étend ou dans toute classe supérieure de l'arborescence d'héritage de classe.

Pourquoi et quand exécuter cette tâche

Les beans de session singleton peuvent avoir des vues de type client de service Web, interface métier distante et interface métier locale. Ils ne peuvent pas utiliser les vues client distante ou locale introduites dans EJB 2.1. Cette prise en charge de bean session singleton remplace la fonctionnalité bean de démarrage de propriété qui a été dépréciée.
L'exemple suivant présente un bean session singleton de base :
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);
	}
}

Comme pour les autres types de beans enterprise, vous pouvez déclarer des métadonnées pour les beans session singleton dans le descripteur de déploiement au lieu d'utiliser des annotations, par exemple :

<?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>

Procédure


Icône indiquant le type de rubrique Rubrique de tâche



Icône d'horodatage Dernière mise à jour: last_date
http://www14.software.ibm.com/webapp/wsbroker/redirect?version=cord&product=was-nd-mp&topic=tejb_ssb
Nom du fichier : tejb_ssb.html