Irgendwelche Ideen, was die Ursache dafür sein könnte?
Spring NamespaceHandler für XML-Schemanamensraum konnte nicht gefunden werden [ 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]
Dies ist meine 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>
In meiner pom.xml habe ich:
<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
quelle
quelle
Antworten:
Ich musste eine zusätzliche Maven-Abhängigkeit hinzufügen:
quelle
spring-security-cas
Glas zu verwenden.Unable to locate Spring NamespaceHandler for XML schema namespace [xxxxx]
Problemen. Ich hatte in der Vergangenheit ein ähnliches Problem , und das hat mir sehr geholfen!Beim Versuch, die Anwendung bereitzustellen, wurde dieselbe Fehlermeldung angezeigt. In Spring kann sich die Sicherheitskonfigurations-XML von der Datei applicationContext.xml unterscheiden, normalerweise von applicationContext-security.xml im Ordner WEB-INF. Die anzuwendenden Änderungen gelten für web.xml
Und die applicationContext.xml würde folgendermaßen aussehen:
Auch nachdem Sie diese Änderungen vorgenommen haben, bleibt der Namespace-Fehler bestehen. Um dies zu beseitigen, fügen Sie die folgenden JAR-Dateien zur WEB-INF / lib und dann zur Bibliothek hinzu:
quelle
Ich hatte eine Weile damit zu kämpfen und keine dieser Antworten half. Dank des Kommentars von user64141 wurde mir klar, dass es ein Problem mit den
spring.handlers
Dateien gab.Ich benutze das Shade-Plugin für Maven, um ein Fettglas zu generieren, und all das
spring.handlers
(undspring.schemas
) Dateien wurden von jeder Spring-Abhängigkeit überschrieben.Die Maven-Site behandelt genau dieses Problem und wie es gelöst werden kann, indem stattdessen die Dateien zusammengefügt werden:
http://maven.apache.org/plugins/maven-shade-plugin/examples/resource-transformers.html#AppendingTransformer
quelle
Ich habe spring-security-config jar verwendet, um das Problem für mich zu lösen
quelle
Die Lösung ist definitiv "spring-security-config", nicht in Ihrer WEB-INF / lib.
Bei meinem Projekt in Eclipse mit Maven stellte sich heraus, dass nicht alle Maven-Abhängigkeiten nach WEB-INF / lib kopiert wurden. Bei Projekt -> Eigenschaften -> Bereitstellungsassembly wurden nur einige der Gläser kopiert.
Um dies zu beheben, klickte ich auf "Hinzufügen", dann auf "Java Build Path Entires" und schließlich auf "Maven Dependencies".
Ich habe SO und das Web die letzte Stunde danach gesucht, also hoffentlich hilft das jemand anderem.
quelle
Eine schöne Liste der Maven-Abhängigkeiten finden Sie unter: Spring Site Die wichtigsten benötigten Artefakte sind:
quelle
@James Jithin - Eine solche Ausnahme kann auch auftreten, wenn Sie in xsi zwei verschiedene Versionen von Beans und Sicherheitsschema haben: schemaLocation. Dies ist in dem von Ihnen eingefügten Snippet der Fall:
In meinem Fall löste das Ändern beider auf 3.1 das Problem
quelle
http://www.springframework.org/schema/beans/spring-beans-3.1.xsd
http://www.springframework.org/schema/security/spring-security-3.2.xsd
In meinem Fall fehlte das Glas 'spring-security-config'.Was ich getan habe:
und
funktioniert einwandfrei. Mehr Baeldung
quelle
Wenn Sie bereits alle Abhängigkeiten in Ihrem POM haben, versuchen
Sie Folgendes : 1. Entfernen Sie alle heruntergeladenen Jars aus Ihrem Maven-Repository-Ordner für 'org-> springframework'.
2. Erstellen Sie einen sauberen Build für Maven .
quelle
Ich bin heute auf das sehr ähnliche Problem gestoßen. Aus irgendeinem Grund
IntelliJ IDEA
wurden Spring Security-JAR-Dateien während der Bereitstellung der Anwendung nicht berücksichtigt. Ich denke, ich sollte der Mehrheit der Poster hier zustimmen.quelle
Ich habe diesen Fehler beim Bereitstellen auf Virgo erhalten. Die Lösung bestand darin, dies zu meinen Bundle-Importen hinzuzufügen:
Ich habe festgestellt, dass es in den Spring-Gläsern unter META-INF einen Abschnitt spring.schemas und einen Abschnitt spring.handlers gibt und die Klasse, auf die sie verweisen (in diesem Fall org.springframework.transaction.config.TxNamespaceHandler), importiert werden muss.
quelle
Ich habe diese Lösung gefunden:
http://www.javacreed.com/unable-to-locate-spring-namespacehandler-for-xml-schema-namespace-httpwww-springframework-orgschemamvc/
Nehmen Sie dieses Glas in Ihr Projekt auf
quelle
Hatte vor ein paar Minuten das gleiche Problem, fehlte mir die Bibliothek 'Maven depencendies' in meiner Deployment Assembly. Ich habe es über den Abschnitt 'Web Deployment Assembly' in Eclipse hinzugefügt
quelle
Wenn das Hinzufügen von Abhängigkeiten Ihr Problem nicht gelöst hat, erstellen Sie das WAR-Archiv erneut. In meinem Fall habe ich eine veraltete WAR-Datei ohne Security-Web- und Security-Conf-Jars verwendet
quelle
Fügen Sie die folgende Abhängigkeit in Ihre pom.xml-Datei ein. Wenn Sie IntelliJ verwenden, fügen Sie dem Ordner WEB-INF-> lib dieselben Gläser hinzu. Der Pfad lautet Projektstruktur -> Atrifakte -> Wählen Sie im Bereich Verfügbare Elemente die Option jar aus und verdoppeln Sie sie klicken. Es wird dem jeweiligen Ordner hinzugefügt
quelle