2016-06-27 1 views
0

Je suis confronté à des problèmes de création d'objet en utilisant spring.net et j'ai besoin de solutions à cela.Comment faire une injection de propriété pour TypeAliases en utilisant spring.net

Configuration Description: J'ai ci-dessous fichier de configuration pour TypeAliases. Pourquoi je fais l'injection de propriété est parce que l'ObjectPoolFactory utilise un constructeur par défaut. Lors de la création de l'objet, je souhaite que cette propriété Viewer soit créée via le fichier Spring ci-dessous.

<object id="ViewerFactory" type="XYZViewerFactory, XYZViewer" singleton ="true"> 
    </object> 

Problème: Pendant l'exécution de l'application, je reçois un appel à défaut constructeur de classe ABCHost et propriété spectateur obtient la valeur XYZViewer. Après que je reçois une erreur de ressort -

ServiceProvider.get_AppContext - ServiceProvider.cs(31) 
    Spring Error : 
Spring.Objects.Factory.ObjectInitializationException: 
------------------------------------ 
--- Message 
------------------------------------ 
Invalid value 'ABCHost' for custom type alias - must be a System.String or System.Type. 

------------------------------------ 
--- Stack Trace 
------------------------------------ 
    at Spring.Objects.Factory.Config.AbstractConfigurer.ResolveRequiredType(Object value, String errorContextSource, String errorContext) 

Pourriez-vous aider à trouver la solution à ce problème? Merci d'avance.

Répondre

0

TypeAlias ​​est définie en utilisant la configuration XML très simple EXTERIEURS printemps/objets:

<configuration> 

    <configSections> 
    <sectionGroup name="spring"> 
     <!-- other configuration section handler defined here --> 
     <section name="typeAliases" type="Spring.Context.Support.TypeAliasesSectionHandler, Spring.Core"/> 
    </sectionGroup> 
    </configSections> 

    <spring> 
    <typeAliases> 
     <alias name="WebServiceExporter" type="Spring.Web.Services.WebServiceExporter, Spring.Web"/> 
    </typeAliases> 
    </spring> 

</configuration> 

Regardez docs voir plus.

TypeAlias ​​est défini dans la structure spring/typeAliases.