J'ai un analyseur de client qui ressemble à ceci:analyseur espace nom client Spring.net
[NamespaceParser(
Namespace = "http://mysite/schema/cache",
SchemaLocationAssemblyHint = typeof(CacheNamespaceParser),
SchemaLocation = "/cache.xsd"
)
]
public class CacheNamespaceParser : NamespaceParserSupport
{
public override void Init()
{
RegisterObjectDefinitionParser("cache", new CacheParser());
}
}
public class CacheParser : AbstractSimpleObjectDefinitionParser
{
protected override Type GetObjectType(XmlElement element)
{
return typeof(CacheDefinition);
}
protected override void DoParse(XmlElement element, ObjectDefinitionBuilder builder)
{
}
protected override bool ShouldGenerateIdAsFallback
{
get { return true; }
}
}
dans la configuration web j'ai la configuration suivante ....
<spring>
<parsers>
<parser type="Spring.Data.Config.DatabaseNamespaceParser, Spring.Data"/>
<parser type="App.Web.CacheNamespaceParser, WebApp" />
</parsers>
Quand je lance le projet, j'obtiens l'erreur suivante:
Une erreur s'est produite lors de la création du gestionnaire de section de configuration pour les analyseurs de printemps/analyseurs: Nom de ressource non valide. Le nom doit être dans 'assembly:<assemblyName>/<namespace>/<resourceName>' format.
J'ai mis un point d'arrêt dans la méthode d'initialisation CacheNamespaceParser et il est appelé.
Si je supprime de la configuration web tout va bien!
Toutes les idées ce qui est erroné
Il semble que cette exception provienne du constructeur SpringRore.IO AssemblyResource. Est-ce lié à l'attribut: NamespaceParser ( Namespace = "http: // monsite/schéma/cache", SchemaLocationAssemblyHint = typeof (CacheNamespaceParser), schemaLocation = "/cache.xsd" ) ? – iasksillyquestions
Le resourceName passé au constructeur ci-dessus assemblage: // WebApp, Version = 1.0.0.0, Culture = neutral, PublicKeyToken = null/cache.xsd » \t chaîne Il me semble avoir le nom de la ressource, un nom d'assemblage, mais pas nom de l'espace de nom ... – iasksillyquestions