Я использую Spring, а в application-context.xml
имеют следующие определения:
<?xml version="1.0" encoding="UTF-8"?>
<beans xmlns="http://www.springframework.org/schema/beans"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xmlns:util="http://www.springframework.org/schema/util"
xmlns:context="http://www.springframework.org/schema/context"
xmlns:aop="http://www.springframework.org/schema/aop"
xmlns:tx="http://www.springframework.org/schema/tx"
xmlns:p="http://www.springframework.org/schema/p"
xmlns:security="http://www.springframework.org/schema/security"
xsi:schemaLocation="
http://www.springframework.org/schema/beans
http://www.springframework.org/schema/beans/spring-beans-2.0.xsd
http://www.springframework.org/schema/util
http://www.springframework.org/schema/util/spring-util-2.0.xsd
http://www.springframework.org/schema/context
http://www.springframework.org/schema/context/spring-context-2.1.xsd
http://www.springframework.org/schema/tx
http://www.springframework.org/schema/tx/spring-tx.xsd
http://www.springframework.org/schema/aop
http://www.springframework.org/schema/aop/spring-aop-2.0.xsd
http://www.springframework.org/schema/security
http://www.springframework.org/schema/security/spring-security-2.0.xsd"
>
.....
Когда мое интернет-соединение потеряно, я не могу запускать свое приложение через tomcat или причал.
Он дает:
[main] WARN org.springframework.beans.factory.xml.XmlBeanDefinitionReader - Ignored XML validation warning
org.xml.sax.SAXParseException: schema_reference.4: Failed to read schema document '/spring-beans-2.0.xsd', because 1) could not find the document; 2) the document could not be read; 3) the root element of the document is not <xsd:schema>.
at com.sun.org.apache.xerces.internal.util.ErrorHandlerWrapper.createSAXParseException(ErrorHandlerWrapper.java:195)
at com.sun.org.apache.xerces.internal.util.ErrorHandlerWrapper.warning(ErrorHandlerWrapper.java:96)
at com.sun.org.apache.xerces.internal.impl.XMLErrorReporter.reportError(XMLErrorReporter.java:380)
at com.sun.org.apache.xerces.internal.impl.XMLErrorReporter.reportError(XMLErrorReporter.java:318)
at com.sun.org.apache.xerces.internal.impl.xs.traversers.XSDHandler.reportSchemaErr(XSDHandler.java:2541)
at com.sun.org.apache.xerces.internal.impl.xs.traversers.XSDHandler.reportSchemaWarning(XSDHandler.java:2532)
at com.sun.org.apache.xerces.internal.impl.xs.traversers.XSDHandler.getSchemaDocument(XSDHandler.java:1836)
at com.sun.org.apache.xerces.internal.impl.xs.traversers.XSDHandler.parseSchema(XSDHandler.java:531)
at com.sun.org.apache.xerces.internal.impl.xs.XMLSchemaLoader.loadSchema(XMLSchemaLoader.java:552)
at com.sun.org.apache.xerces.internal.impl.xs.XMLSchemaValidator.findSchemaGrammar(XMLSchemaValidator.java:2408)
at com.sun.org.apache.xerces.internal.impl.xs.XMLSchemaValidator.handleStartElement(XMLSchemaValidator.java:1753)
at com.sun.org.apache.xerces.internal.impl.xs.XMLSchemaValidator.startElement(XMLSchemaValidator.java:685)
at com.sun.org.apache.xerces.internal.impl.XMLNSDocumentScannerImpl.scanStartElement(XMLNSDocumentScannerImpl.java:400)
at com.sun.org.apache.xerces.internal.impl.XMLNSDocumentScannerImpl$NSContentDriver.scanRootElementHook(XMLNSDocumentScannerImpl.java:626)
at com.sun.org.apache.xerces.internal.impl.XMLDocumentFragmentScannerImpl$FragmentContentDriver.next(XMLDocumentFragmentScannerImpl.java:3095)
at com.sun.org.apache.xerces.internal.impl.XMLDocumentScannerImpl$PrologDriver.next(XMLDocumentScannerImpl.java:921)
at com.sun.org.apache.xerces.internal.impl.XMLDocumentScannerImpl.next(XMLDocumentScannerImpl.java:648)
at com.sun.org.apache.xerces.internal.impl.XMLNSDocumentScannerImpl.next(XMLNSDocumentScannerImpl.java:140)
at com.sun.org.apache.xerces.internal.impl.XMLDocumentFragmentScannerImpl.scanDocument(XMLDocumentFragmentScannerImpl.java:510)
at com.sun.org.apache.xerces.internal.parsers.XML11Configuration.parse(XML11Configuration.java:807)
at com.sun.org.apache.xerces.internal.parsers.XML11Configuration.parse(XML11Configuration.java:737)
at com.sun.org.apache.xerces.internal.parsers.XMLParser.parse(XMLParser.java:107)
at com.sun.org.apache.xerces.internal.parsers.DOMParser.parse(DOMParser.java:225)
at com.sun.org.apache.xerces.internal.jaxp.DocumentBuilderImpl.parse(DocumentBuilderImpl.java:283)
at org.springframework.beans.factory.xml.DefaultDocumentLoader.loadDocument(DefaultDocumentLoader.java:75)
at org.springframework.beans.factory.xml.XmlBeanDefinitionReader.doLoadBeanDefinitions(XmlBeanDefinitionReader.java:396)
at org.springframework.beans.factory.xml.XmlBeanDefinitionReader.loadBeanDefinitions(XmlBeanDefinitionReader.java:342)
at org.springframework.beans.factory.xml.XmlBeanDefinitionReader.loadBeanDefinitions(XmlBeanDefinitionReader.java:310)
at org.springframework.beans.factory.support.AbstractBeanDefinitionReader.loadBeanDefinitions(AbstractBeanDefinitionReader.java:143)
at org.springframework.beans.factory.support.AbstractBeanDefinitionReader.loadBeanDefinitions(AbstractBeanDefinitionReader.java:178)
at org.springframework.beans.factory.support.AbstractBeanDefinitionReader.loadBeanDefinitions(AbstractBeanDefinitionReader.java:149)
at org.springframework.web.context.support.XmlWebApplicationContext.loadBeanDefinitions(XmlWebApplicationContext.java:124)
at org.springframework.web.context.support.XmlWebApplicationContext.loadBeanDefinitions(XmlWebApplicationContext.java:92)
at org.springframework.context.support.AbstractRefreshableApplicationContext.refreshBeanFactory(AbstractRefreshableApplicationContext.java:123)
at org.springframework.context.support.AbstractApplicationContext.obtainFreshBeanFactory(AbstractApplicationContext.java:423)
at org.springframework.context.support.AbstractApplicationContext.refresh(AbstractApplicationContext.java:353)
at org.springframework.web.context.ContextLoader.createWebApplicationContext(ContextLoader.java:255)
at org.springframework.web.context.ContextLoader.initWebApplicationContext(ContextLoader.java:199)
at org.springframework.web.context.ContextLoaderListener.contextInitialized(ContextLoaderListener.java:45)
at org.mortbay.jetty.handler.ContextHandler.startContext(ContextHandler.java:548)
at org.mortbay.jetty.servlet.Context.startContext(Context.java:136)
at org.mortbay.jetty.webapp.WebAppContext.startContext(WebAppContext.java:1250)
at org.mortbay.jetty.handler.ContextHandler.doStart(ContextHandler.java:517)
at org.mortbay.jetty.webapp.WebAppContext.doStart(WebAppContext.java:467)
at org.mortbay.jetty.plugin.Jetty6PluginWebAppContext.doStart(Jetty6PluginWebAppContext.java:115)
at org.mortbay.component.AbstractLifeCycle.start(AbstractLifeCycle.java:50)
at org.mortbay.jetty.handler.HandlerCollection.doStart(HandlerCollection.java:152)
at org.mortbay.jetty.handler.ContextHandlerCollection.doStart(ContextHandlerCollection.java:156)
at org.mortbay.component.AbstractLifeCycle.start(AbstractLifeCycle.java:50)
at org.mortbay.jetty.handler.HandlerCollection.doStart(HandlerCollection.java:152)
at org.mortbay.component.AbstractLifeCycle.start(AbstractLifeCycle.java:50)
at org.mortbay.jetty.handler.HandlerWrapper.doStart(HandlerWrapper.java:130)
at org.mortbay.jetty.Server.doStart(Server.java:224)
at org.mortbay.component.AbstractLifeCycle.start(AbstractLifeCycle.java:50)
at org.mortbay.jetty.plugin.Jetty6PluginServer.start(Jetty6PluginServer.java:132)
at org.mortbay.jetty.plugin.AbstractJettyMojo.startJetty(AbstractJettyMojo.java:441)
at org.mortbay.jetty.plugin.AbstractJettyMojo.execute(AbstractJettyMojo.java:383)
at org.mortbay.jetty.plugin.AbstractJettyRunMojo.execute(AbstractJettyRunMojo.java:210)
at org.mortbay.jetty.plugin.Jetty6RunMojo.execute(Jetty6RunMojo.java:184)
at org.apache.maven.plugin.DefaultPluginManager.executeMojo(DefaultPluginManager.java:483)
at org.apache.maven.lifecycle.DefaultLifecycleExecutor.executeGoals(DefaultLifecycleExecutor.java:678)
at org.apache.maven.lifecycle.DefaultLifecycleExecutor.executeStandaloneGoal(DefaultLifecycleExecutor.java:553)
at org.apache.maven.lifecycle.DefaultLifecycleExecutor.executeGoal(DefaultLifecycleExecutor.java:523)
at org.apache.maven.lifecycle.DefaultLifecycleExecutor.executeGoalAndHandleFailures(DefaultLifecycleExecutor.java:371)
at org.apache.maven.lifecycle.DefaultLifecycleExecutor.executeTaskSegments(DefaultLifecycleExecutor.java:332)
at org.apache.maven.lifecycle.DefaultLifecycleExecutor.execute(DefaultLifecycleExecutor.java:181)
at org.apache.maven.DefaultMaven.doExecute(DefaultMaven.java:356)
at org.apache.maven.DefaultMaven.execute(DefaultMaven.java:137)
at org.apache.maven.cli.MavenCli.main(MavenCli.java:356)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
at java.lang.reflect.Method.invoke(Method.java:597)
at org.codehaus.classworlds.Launcher.launchEnhanced(Launcher.java:315)
at org.codehaus.classworlds.Launcher.launch(Launcher.java:255)
at org.codehaus.classworlds.Launcher.mainWithExitCode(Launcher.java:430)
at org.codehaus.classworlds.Launcher.main(Launcher.java:375)
2009-11-13 15:31:25,675 [main] ERROR org.springframework.web.context.ContextLoader - Context initialization failed
org.springframework.beans.factory.xml.XmlBeanDefinitionStoreException: Line 23 in XML document from class path resource [application-context.xml] is invalid; nested exception is org.xml.sax.SAXParseException: cvc-elt.1: Cannot find the declaration of element 'beans'.
at org.springframework.beans.factory.xml.XmlBeanDefinitionReader.doLoadBeanDefinitions(XmlBeanDefinitionReader.java:404)
at org.springframework.beans.factory.xml.XmlBeanDefinitionReader.loadBeanDefinitions(XmlBeanDefinitionReader.java:342)
at org.springframework.beans.factory.xml.XmlBeanDefinitionReader.loadBeanDefinitions(XmlBeanDefinit........
Любые предложения по его исправлению?
Ответ 1
Нет необходимости использовать протокол classpath: protocol в URL-адресе schemaLocation, если пространство имен настроено правильно, а файл XSD находится в вашем пути к классам.
Spring doc " Регистрация обработчика и схемы" показывает, как это должно быть сделано.
В вашем случае проблема была, вероятно, в том, что spring -context jar в вашем пути к классам не был 2.1. Вот почему изменение протокола в classpath: и установка конкретного 2.1 XSD в ваш путь к классам устранила проблему.
Из того, что я видел, для основного XSD есть 2 схемы, содержащиеся в банке spring - *. Один раз, чтобы разрешить URL схемы с версией и один раз без нее.
В качестве примера см. эту часть содержимого spring.schemas в spring -context-3.0.5.RELEASE.jar:
http\://www.springframework.org/schema/context/spring-context-2.5.xsd=org/springframework/context/config/spring-context-2.5.xsd
http\://www.springframework.org/schema/context/spring-context-3.0.xsd=org/springframework/context/config/spring-context-3.0.xsd
http\://www.springframework.org/schema/context/spring-context.xsd=org/springframework/context/config/spring-context-3.0.xsd
Это означает, что (в xsi: schemaLocation)
http://www.springframework.org/schema/context/spring-context-2.5.xsd
будет подтвержден против
org/springframework/context/config/spring-context-2.5.xsd
в пути к классам.
http://www.springframework.org/schema/context/spring-context-3.0.xsd
или
http://www.springframework.org/schema/context/spring-context.xsd
будет подтвержден против
org/springframework/context/config/spring-context-3.0.xsd
в пути к классам.
http://www.springframework.org/schema/context/spring-context-2.1.xsd
не определен, поэтому Spring будет искать его, используя литеральный URL, определенный в schemaLocation.
Ответ 2
Я решил это
<beans xmlns="http://www.springframework.org/schema/beans"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xmlns:util="http://www.springframework.org/schema/util"
xmlns:context="http://www.springframework.org/schema/context"
xmlns:aop="http://www.springframework.org/schema/aop"
xmlns:tx="http://www.springframework.org/schema/tx"
xmlns:p="http://www.springframework.org/schema/p"
xmlns:security="http://www.springframework.org/schema/security"
xsi:schemaLocation="
http://www.springframework.org/schema/beans
http://www.springframework.org/schema/beans/spring-beans-2.0.xsd
http://www.springframework.org/schema/util
http://www.springframework.org/schema/util/spring-util-2.0.xsd
http://www.springframework.org/schema/context
classpath:spring-context-2.1.xsd
http://www.springframework.org/schema/tx
http://www.springframework.org/schema/tx/spring-tx.xsd
http://www.springframework.org/schema/aop
http://www.springframework.org/schema/aop/spring-aop-2.0.xsd
http://www.springframework.org/schema/security
http://www.springframework.org/schema/security/spring-security-2.0.xsd"
>
classpath:spring-context-2.1.xsd
- ключ для работы в автономном режиме (без подключения к Интернету). Также я скопировал spring-context-2.1.xsd
рядом (тот же каталог) файл application-context.xml
Ответ 3
Что-то вроде этого сработало для меня.
xsi:schemaLocation=
"http://www.springframework.org/schema/beans
classpath:org/springframework/beans/factory/xml/spring-beans-3.0.xsd
http://www.springframework.org/schema/context
classpath:org/springframework/beans/factory/xml/spring-context-3.0.xsd"
Ответ 4
В случае, если кто-то прибыл сюда через тот же корень, что и я, я попал в эту проблему, потому что я строил один JAR со всеми зависимостями, включая Spring JARs. В результате файл spring.schemas в некоторых каталогах META-INF из Spring JARs был перезаписан.
Я нашел предлагаемые решения здесь: Как создать исполняемый баннер на основе w763 > с maven?
Ответ 5
В то же время появилась аналогичная проблема. В моем случае это был теневой плагин, который был виновником, в дополнение к springframework.org, имеющему перебои в работе. Следующий фрагмент прояснил ситуацию:
<transformer implementation="org.apache.maven.plugins.shade.resource.AppendingTransformer">
<resource>META-INF/spring.schemas</resource>
</transformer>
<transformer implementation="org.apache.maven.plugins.shade.resource.AppendingTransformer">
<resource>META-INF/spring.handlers</resource>
</transformer>
HTH кто-то
Ответ 6
Вы должны проверить, что файлы spring.handlers
и spring.schemas
находятся в пути к классам и имеют правильный контент.
Это можно сделать с помощью ClassLoader.getResource(..)
. Вы можете запустить этот метод с удаленным отладчиком в среде выполнения. Расширяемая настройка авторинга XML описана в Spring Ссылка B.5. Регистрация обработчика и схемы.
Обычно файлы должны находиться в банке spring (springframework.jar/META-INF/) и в пути к классам, когда spring может быть запущен.
Ответ 7
Вам нужно добавить расположение схемы в определение bean, а затем их можно найти в пути к классам вместо того, чтобы извлекать их из сети. Учитывая ваши проблемы с форматированием, я не уверен на 100%, что вы уже не делаете этого.
<?xml version="1.0" encoding="UTF-8"?>
<beans xmlns="http://www.springframework.org/schema/beans"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xmlns:context="http://www.springframework.org/schema/context"
xsi:schemaLocation="http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans-2.0.xsd
http://www.springframework.org/schema/context http://www.springframework.org/schema/context/spring-context-2.5.xsd">
<!-- empty: the beans we use are in the base class context. -->
</beans>
Ответ 8
Проблема заключается в файлах JAR, которые вы используете в своем приложении.
То, что я делал, работало, заключалось в том, чтобы попасть в JAR для SPRING -CORE, SPRING - BEANS, SPRING -CONTEXT, SPRING -TX, которые соответствуют версии, которую я использую. В папке META-INF я конкатенировал все spring.handlers и spring.схемы, которые входят в эти JAR.
Я убил двух зайцев одним выстрелом, я решил проблему схем, так что это также корректно работает в автономном режиме.
P.S. Я попробовал плагин maven для SHADE и трансформаторов, но это не сработало.
Ответ 9
Мы решили проблему:
DocumentBuilderFactory factory = DocumentBuilderFactory.newInstance();
factory.setNamespaceAware(true);
factory.setValidating(false); // This avoid to search schema online
factory.setAttribute("http://java.sun.com/xml/jaxp/properties/schemaLanguage", "http://www.w3.org/2001/XMLSchema");
factory.setAttribute("http://java.sun.com/xml/jaxp/properties/schemaSource", "TransactionMessage_v1.0.xsd");
Обратите внимание, что наше приложение является автономным автономным приложением Java.
Ответ 10
Если вы используете eclipse для своей разработки, это помогает, если вы устанавливаете плагин STS для Eclipse [из marketPlace для конкретной версии eclipse.
Теперь Когда вы пытаетесь создать новый файл конфигурации в папке (обычно ресурсах) внутри проекта, параметры будут иметь "Spring Folder", и вы можете выбрать файл определения Spring Bean вариант
Spring > Spring Bean Файл конфигурации.
При выборе этой опции, когда вы выполните шаги, она попросит вас выбрать пространства имен и конкретные версии:
Таким образом, можно исключить возможность наличия несуществующей банки или старой версии.
Были бы также размещены изображения, но моя репутация довольно низкая..: (
Ответ 11
У меня была эта проблема. Для потомков мое исключение было:
org.xml.sax.SAXParseException; lineNumber: 7; columnNumber: 117;
schema_reference.4: Failed to read schema document
'http://www.springframework.org/schema/beans/spring-beans-4.2.xsd'
Я решил это, когда понял, что версия spring-beans
, указанная в моем Maven pom.xml
, была 4.1.x
, что означает, что конкретный .xsd
не может быть найден в пути к классам.
Это было замаскировано в течение длительного времени, потому что я обычно в сети, поэтому я думал, что в оффлайне "сломано" сборка. Но это не имело к этому никакого отношения. Обновив мой pom.xml
, чтобы указать правильную версию spring-beans
, а именно 4.2.x
, исправил ее.
Ответ 12
Найти путь класса
Если вы используете eclipse, щелкните соответствующий файл jar. Goto → META-INF- > открыть файл spring.schemas
вы увидите строки, похожие на ниже.
http://www.springframework.org/schema/context/spring -context.xsd = орг/springframework/контекст/конфигурации/ spring -context-3.1.xsd
скопировать после = и настроить beans что-то вроде ниже.
<beans xmlns="http://www.springframework.org/schema/beans"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xmlns:util="http://www.springframework.org/schema/util"
xmlns:rabbit="http://www.springframework.org/schema/rabbit"
xmlns:context="http://www.springframework.org/schema/context"
xsi:schemaLocation="http://www.springframework.org/schema/rabbit classpath:org/springframework/amqp/rabbit/config/spring-rabbit-1.1.xsd
http://www.springframework.org/schema/beans classpath:org/springframework/beans/factory/xml/spring-beans-3.1.xsd
http://www.springframework.org/schema/context classpath:org/springframework/context/config/spring-context-3.1.xsd
http://www.springframework.org/schema/util classpath:org/springframework/beans/factory/xml/spring-util-3.1.xsd">
Ответ 13
Я хотел бы добавить еще один аспект этого обсуждения. В ОС Windows я заметил, что когда файл jar, содержащий схему, хранится в каталоге, путь которого содержит пробельный символ, например, как в следующем примере
"c:\Program Files\myApp\spring-beans-4.0.2.RELEASE.jar"
тогда указать URL-адрес местоположения схемы следующим образом недостаточно, если вы разрабатываете отдельное приложение, которое должно работать и в автономном режиме
<beans
xsi:schemaLocation="
http://www.springframework.org/schema/beans org/springframework/beans/factory/xml/spring-beans-2.0.xsd"
/>
Я узнал, что результатом такого разрешения URL-адреса местоположения схемы является файл, который имеет следующий путь:
"c:\Program%20Files\myApp\spring-beans-4.0.2.RELEASE.jar"
Когда я запустил приложение из другого каталога, который не содержал пробел на своем пути, тогда разрешение на расположение схемы работало нормально. Может быть, кто-то сталкивался с подобными проблемами? Тем не менее я обнаружил, что протокол classpath отлично работает в моем случае
<beans
xsi:schemaLocation="
http://www.springframework.org/schema/beans classpath:org/springframework/beans/factory/xml/spring-beans-2.0.xsd"
/>
Ответ 14
У меня была такая же проблема, когда я использую spring -контекст версии 4.0.6 и
версия весенней безопасности 4.1.0.
При изменении spring -security версии до 4.0.4 (поскольку 4.0.6 из spring -security недоступно) в моем pom и security xml → schemaLocation, он компилируется без Интернета.
Значит, вы также можете решить это:
-
изменение spring -защиты к более старой или той же версии, чем
весна-контекст.
-
изменение spring -context на новую или ту же версию, чем
весна-безопасности.
(любым способом spring -контекст должен быть более новой или такой же версии до spring -security)
Ответ 15
Я столкнулся с этой аналогичной проблемой. В моем случае моя резолюция совсем другая. Вот мой XML файл spring:
...
<beans xmlns="http://www.springframework.org/schema/beans"
xmlns:context="http://www.springframework.org/schema/context"
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.xsd
http://www.springframework.org/schema/context
http://www.springframework.org/schema/context/spring-context.xsd">
...
Я не указываю какую-либо версию xsd, поскольку я хочу, чтобы spring использовал последнюю версию xsd внутри зависимостей spring. Версия spring, используемая моим приложением, была spring - beans -4.3.1.RELEASE.jar: 4.3.1.RELEASE, и когда я собираю свое приложение в банку, все spring зависимости существуют в моем пути к классам. Однако при запуске моего контекста приложения spring я получил следующую ошибку:
org.xml.sax.SAXParseException: schema_reference.4: Failed to read schema document 'http://www.springframework.org/schema/beans/spring-beans.xsd', because 1) could not find the document; 2) the document could not be read; 3) the root element of the document is not <xsd:schema>.
После некоторого затруднительного устранения неполадок, я обнаружил, что проблема связана с index.list внутри папки META-INF моего файла jar. Если файл index.list, обработчики пространства имен spring не могут быть расположены правильно проанализировать контекст xml приложения spring. Вы можете узнать больше об этой проблеме spring SPR-5705
Удалив индексирование из моего maven-jar-plugin, мне удается решить проблему. Надеюсь, это сэкономит несколько раз для людей, имеющих ту же проблему.
Ответ 16
Просто убедитесь, что соответствующий файл jar файла spring находится в вашем пути к среде выполнения. В моем случае этого нам не хватало spring -tx-4.3.4.RELEASE.jar из runtime classpath. После добавления этой банки проблема была решена.
Ответ 17
Если в вашей платформе нет подключения к Интернету, и вы используете Eclipse, выполните следующие действия (он решает мою проблему)
- Найти точные файлы xsd (вы можете разархивировать эти файлы из своих банок. Например, spring - beans -x.y.xsd в spring - beans -x.y.z.RELEASE.jar)
- Добавьте эти xsd файлы в Eclipse XML Catalog. (Настройки- > XML- > Каталог XML, Добавить файлы)
- Добавить расположение этих файлов в файл конфигурации. (Будьте осторожны, напишите точную версию файла)
Пример:
xsi: schemaLocation = " http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans-x.y.xsd"
Ответ 18
Удалите банки, добавленные вами недавно в web-inf → lib. например jstl jars.