Des idées sur ce qui pourrait en être la cause?
Impossible de localiser Spring NamespaceHandler pour l'espace de noms de schéma XML [ http://www.springframework.org/schema/security]
org.springframework.web.context.ContextLoader initWebApplicationContext: Context initialization failed
org.springframework.beans.factory.parsing.BeanDefinitionParsingException: Configuration problem: Unable to locate Spring NamespaceHandler for XML schema namespace [http://www.springframework.org/schema/security]
Offending resource: ServletContext resource [/WEB-INF/applicationContext.xml]
C'est mon applicationContext.xml:
<?xml version="1.0" encoding="UTF-8"?>
<beans:beans xmlns="http://www.springframework.org/schema/security"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xmlns:beans="http://www.springframework.org/schema/beans"
xmlns:context="http://www.springframework.org/schema/context"
xsi:schemaLocation="http://www.springframework.org/schema/beans
http://www.springframework.org/schema/beans/spring-beans-3.0.xsd
http://www.springframework.org/schema/context
http://www.springframework.org/schema/context/spring-context-3.0.xsd
http://www.springframework.org/schema/security
http://www.springframework.org/schema/security/spring-security-3.0.xsd">
...
</beans:beans>
Dans mon pom.xml, j'ai:
<dependency>
<groupId>org.springframework.security</groupId>
<artifactId>spring-security-core</artifactId>
<version>3.0.1.RELEASE</version>
</dependency>
<dependency>
<groupId>org.springframework.security</groupId>
<artifactId>spring-security-openid</artifactId>
<version>3.0.1.RELEASE</version>
</dependency>
java
spring
maven-2
spring-security
Taylor Leese
la source
la source
Réponses:
J'avais besoin d'ajouter une dépendance Maven supplémentaire:
<dependency> <groupId>org.springframework.security</groupId> <artifactId>spring-security-config</artifactId> <version>3.0.1.RELEASE</version> </dependency>
la source
spring-security-cas
pot.Unable to locate Spring NamespaceHandler for XML schema namespace [xxxxx]
problèmes. J'ai eu un problème similaire dans le passé, et cela m'a beaucoup aidé!J'ai eu le même message d'erreur en essayant de déployer l'application. Au printemps, la configuration de sécurité xml peut être différente de applicationContext.xml, généralement applicationContext-security.xml dans le dossier WEB-INF. Les modifications à appliquer concernent web.xml
<context-param> <param-name>contextConfigLocation</param-name> <param-value> /WEB-INF/applicationContext.xml /WEB-INF/applicationContext-security.xml </param-value> </context-param>
Et l'applicationContext.xml ressemblerait à ceci:
<?xml version="1.0" encoding="UTF-8"?> <beans:beans xmlns="http://www.springframework.org/schema/security" xmlns:beans="http://www.springframework.org/schema/beans" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans-3.0.xsd http://www.springframework.org/schema/security http://www.springframework.org/schema/security/spring-security-3.1.xsd"> <http auto-config='true'> <intercept-url pattern="/login.jsp" access="IS_AUTHENTICATED_ANONYMOUSLY"/> <intercept-url pattern="/**" access="ROLE_USER" /> <form-login login-page='login.jsp'/> </http> </beans:beans>
Même après avoir apporté ces modifications, l'erreur d'espace de noms existera. Pour vous en débarrasser, ajoutez les fichiers jar suivants au WEB-INF / lib puis à la bibliothèque:
la source
J'ai lutté avec cela pendant un certain temps et aucune de ces réponses n'a aidé. Grâce au commentaire de user64141, j'ai réalisé qu'il y avait un problème avec les
spring.handlers
fichiers.J'utilise le plugin Shade pour Maven pour générer un gros pot, et tous les fichiers
spring.handlers
(etspring.schemas
) étaient écrasés par chaque dépendance Spring.Le site Maven couvre exactement ce problème et comment le résoudre en ajoutant les fichiers ensemble à la place:
http://maven.apache.org/plugins/maven-shade-plugin/examples/resource-transformers.html#AppendingTransformer
la source
J'ai utilisé le pot spring-security-config, cela a résolu le problème pour moi
la source
La solution est définitivement "spring-security-config" pas dans votre WEB-INF / lib.
Pour mon projet dans Eclipse utilisant Maven, il s'est avéré que toutes les dépendances de maven n'étaient pas copiées dans WEB-INF / lib. En regardant Project -> Properties -> Deployment Assembly, seuls certains des fichiers JAR étaient copiés.
Pour résoudre ce problème, j'ai cliqué sur "Ajouter", puis sur "Java Build Path Entires" et enfin "Maven Dependencies".
Cela fait une heure que je cherche SO et le Web à la recherche de cela, alors j'espère que cela aidera quelqu'un d'autre.
la source
Une belle liste de dépendances Maven existe sur: Spring Site Les principaux artefacts nécessaires sont:
la source
@James Jithin - une telle exception peut également apparaître lorsque vous avez deux versions différentes de beans et de schéma de sécurité dans xsi: schemaLocation. C'est le cas dans l'extrait que vous avez collé:
xsi:schemaLocation="http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans-3.0.xsd http://www.springframework.org/schema/security http://www.springframework.org/schema/security/spring-security-3.1.xsd"
Dans mon cas, les changer tous les deux en 3.1 a résolu le problème
la source
http://www.springframework.org/schema/beans/spring-beans-3.1.xsd
http://www.springframework.org/schema/security/spring-security-3.2.xsd
dans mon cas, il me manquait le pot 'spring-security-config'.Ce que j'ai fait:
<dependency> <groupId>org.springframework.security</groupId> <artifactId>spring-security-config</artifactId> <version>3.2.5.RELEASE</version> </dependency> <dependency> <groupId>org.springframework.security</groupId> <artifactId>spring-security-web</artifactId> <version>3.2.5.RELEASE</version> </dependency>
et
xsi:schemaLocation=" http://www.springframework.org/schema/security http://www.springframework.org/schema/security/spring-security-3.2.xsd http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans-4.1.xsd">
fonctionne parfaitement. Plus Baeldung
la source
Si vous avez déjà toutes les dépendances dans votre pom, essayez:
1. Supprimez tous les fichiers jars téléchargés de votre dossier maven repository pour 'org-> springframework'
2. Faites une compilation propre maven.
la source
J'ai rencontré le problème très similaire aujourd'hui. Pour une raison quelconque,
IntelliJ IDEA
je n'ai pas inclus les fichiers jar Spring Security lors du déploiement de l'application. Je pense que je devrais être d'accord avec la majorité des affiches ici.la source
J'ai eu cette erreur lors du déploiement sur Virgo. La solution était d'ajouter ceci à mes importations groupées:
org.springframework.transaction.config;version="[3.1,3.2)",
J'ai remarqué dans les bocaux Spring sous META-INF qu'il y avait une section spring.schemas et une section spring.handlers, et la classe vers laquelle ils pointent (dans ce cas org.springframework.transaction.config.TxNamespaceHandler) doit être importée.
la source
J'ai trouvé cette solution:
http://www.javacreed.com/unable-to-locate-spring-namespacehandler-for-xml-schema-namespace-httpwww-springframework-orgschemamvc/
Incluez ce pot dans votre projet
la source
J'ai eu le même problème il y a quelques minutes, il me manquait la bibliothèque «Dépendances Maven» dans mon Assemblée de déploiement. Je l'ai ajouté via la section 'Web Deployment Assembly' dans Eclipse
la source
si l'ajout de dépendances n'a pas résolu votre problème, créez à nouveau l'archive WAR. Dans mon cas, j'ai utilisé un fichier WAR obsolète sans jars security-web et security-conf
la source
Ajoutez la dépendance suivante dans votre fichier pom.xml et si vous utilisez IntelliJ, ajoutez les mêmes jars au dossier WEB-INF-> lib .... le chemin est Structure du projet -> Atrifacts -> Sélectionnez le jar dans le volet Éléments disponibles et double Cliquez sur. Il s'ajoutera au dossier respectif
<dependency> <groupId>org.springframework.security</groupId> <artifactId>spring-security-config</artifactId> <version>3.0.1.RELEASE</version> </dependency>
la source