Je voudrais utiliser des intercepteurs prototypes au lieu d'un intercepteur singleton afin que chaque session obtienne une nouvelle instance d'intercepteur. J'ai regardé dans la classe HibernateTransactionManager et je pense que "EntityInterceptorObjectName" et "ObjectFactory" sont les propriétés que je dois définir.Comment référencer ObjectFactory de Spring.Net dans la configuration?
Alors que EntityInterceptorObjectName est assez évident, Je n'ai aucune idée de comment référencer l'ObjectFactory quand il est la "mère de l'ObjectFactories", par exemple. la même ObjectFactory qui crée AppContext/the HibernateTransactionManager.
La partie pertinente de la configuration:
<object id="HibernateTransactionManager" type="Spring.Data.NHibernate.HibernateTransactionManager, Spring.Data.NHibernate20">
<property name="DbProvider" ref="DbProvider"/>
<property name="SessionFactory" ref="SessionFactory"/>
<!-- the name of my non-Singleton EntityInterceptor-->
<property name="EntityInterceptorObjectName" value="MyPrototypeEntityInterceptor" />
<!-- What should I put as ref here? -->
<property name="ObjectFactory" ref="" />
</object>
<object id="MyPrototypeEntityInterceptor" type="Hib.EntityInterceptor, Hib.Interceptors" singleton="false">
</object>
Merci zoidbeck :) Je viens de découvrir que le HibernateTransactionManager implémente déjà IObjectFactoryAware donc je ne pas besoin de fixer à tous les biens ObjectFactory! Merci de m'avoir indiqué la bonne direction. – tobsen
Ok, ceci est en effet la manière la plus élégante. Heureux que je pourrais aider au moins un peu et merci pour le vote :). – zoidbeck