Vous générez les méthodes de gestion de la persistance en fonction du langage objet.
Selon que l'EJB est de type CMP ou BMP, le fichier de descripteur de déploiement a un contenu différent :
Un CMP met en jeu le serveur d'applications. Il inclut l'EJB et le descripteur de correspondance O/R (.XML). Le serveur extrait à la fois l'EJB et le descripteur de correspondance O/R pour générer le code
Si le serveur d'applications ne prend pas en charge le descripteur de correspondance O/R, la mise en correspondance doit être effectuée manuellement. Si le descripteur de correspondance O/R de votre serveur d'applications n'est pas encore pris en charge, vous pouvez créer votre propre descripteur en créant un nouveau fichier d'extension. Pour plus d'informations sur l'utilisation des fichiers d'extension, voir Personnalisation et extension de PowerAMC > Fichiers d'extension.
Un BMP met en jeu un processus manuel. Il inclut la source de l'EJB, sans descripteur de correspondance O/R (la correspondance O/R est facultative). Le développeur de BMP doit mettre en oeuvre lui-même la gestion de la persistance à l'aide des méthodes ejbStore() et ejbLoad(), le serveur d'applications ne prend en charge que ses fonctions. Une classe de mise en oeuvre hérite de la classe Bean BMP, gère les données de persistance et communique avec la base de données.
Vous pouvez également définir un EJB comme CMP, puis le générer comme BMP lorsque vous générez le code. Le générateur de code génère une classe de mise en oeuvre (sous-classe) pour la classe Bean qui contient ses méthodes, et utilise une correspondance O/R et un template persistant pour mettre en oeuvre la persistance.
Pour plus d'informations sur la mise en correspondance d'objets, voir Modélisation des correspondances O/R.
Vous pouvez utiliser différentes méthodes pour générer un EJB CMP dans un EJB BMP. Vous pouvez soit copier le langage objet Java fourni dans PowerAMC comme référence à un nouveau langage objet, puis décrire comment doivent être générées les classes de mise en oeuvre de l'EJB CMP dans votre propre langage objet, ou bien créer un fichier d'extension qui inclut ces classes de mise en oeuvre.
Vous pouvez également rédiger du code VB script pour convertir l'EJB CMP en EJB BMP. Pour ce faire, vous devez générer l'EJB comme CMP, puis lancer le script VB qui passera en revue tous les objets du modèle et générera une classe de mise en oeuvre pour chaque classe identifiée.