2011-02-03 3 views
0

Goodmorning all,Transaction gérée par conteneur avec JDO/DataNucleus

Je joue actuellement avec Datanucleus/JDO. Une chose que j'aime est le système de requête de type Sûr, et je veux utiliser Datanucleus dans les futurs projets (je viens d'arrière-plan Hibernate). Je veux laisser le conteneur (JBOSS 5) gérer la transaction et j'ai défini une source de données en suivant les instructions d'un utilisateur de datanucleus (datanucleus forum thread), le seul problème est que je ne comprends pas comment obtenir un JDOPersistenceManager, tout ce que je reçois à partir d'une recherche jndi est le PersistenceManager, si j'essaie une distribution à JDOPersistenceManager, j'obtiendra ClassCastException. J'ai besoin JDOPersistenceManager pour obtenir une requête typesafe ... Ma configuration est la même que celle expliquée dans le fil ..

Est-ce que quelqu'un a eu le même problème avant? Et je me promène aussi SI cette chose serait possible du tout ...

Merci pour les réponses!

+0

Si vous obtenez un PM alors vous pouvez facilement nous faire savoir quel est le nom de classe complet de ce PM. Cela vous indique ce que vous pouvez convertir en – DataNucleus

+0

L'instance que je reçois de la recherche jndi est une instance de la classe org.datanucleus.jdo.connector.PersistenceManagerImpl. Je pense que j'ai besoin d'une instance de JDOPersistenceManager, peut-être que je dois le spécifier quelque part dans la configuration de la source de données? – Andrea

Répondre

1

jamais eu le temps de l'essayer sous JCA donc pas de point d'accès évident pour obtenir le sous-jacent JDOPersistenceManager ... cependant, essayer quelque chose comme ça

JDOPersistenceManager jdopm = 
    ((JDOTransaction)pm.getCurrentTransaction()).getPersistenceManager(); 

et si cela fonctionne alors vous avez une solution de contournement jusqu'à ce que nous fournir un accesseur dans le org.datanucleus.jdo.connector.PersistenceManagerImpl classe pour la JDOPersistenceManager

+0

Merci pour votre réponse! Maintenant, cela fonctionne comme prévu. Au revoir – Andrea

Questions connexes