Ошибка схемы xmlns пакетной партии

Мы создали приложение весеннего пакета с использованием eclipse. Всякий раз, когда я запускаю программу через eclipse, она работает нормально. Но когда я пытаюсь создать и запустить файл jar, созданный с помощью ant, я получаю эту уродливую трассировку стека.

.apache.xerces.internal.parsers.XML11Configuration.parse (XML11Configuration.java:737)     в   com.sun.org.apache.xerces.internal.parsers.XMLParser.parse (XMLParser.java:119)     в   com.sun.org.apache.xerces.internal.parsers.DOMParser.parse (DOMParser.java:235)     в   com.sun.org.apache.xerces.internal.jaxp.DocumentBuilderImpl.parse (DocumentBuilderImpl.java:284)     в   org.springframework.beans.factory.xml.DefaultDocumentLoader.loadDocument (DefaultDocumentLoader.java:75)     в   org.springframework.beans.factory.xml.XmlBeanDefinitionReader.doLoadBeanDefinitions (XmlBeanDefinitionReader.java:388)     ... еще 16

В основном говоря, что в строке 11 он не может найти декларацию для элементов. Вот мой контекст запуска.

<?xml version="1.0" encoding="UTF-8"?>
    

        
            
                
                    file:batch.properties
                    file:application.properties
                
            
        


        

        
        


    

и мой build.xml, который создал банку.

<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<!-- WARNING: Eclipse auto-generated file.
              Any modifications will be overwritten.
              To include a user specific buildfile here, simply create one in the same
              directory with the processing instruction <?eclipse.ant.import?>
              as the first entry and export the buildfile again. -->

    
    
    
    
    
        
        
        <!-- 
        
        
        
        
        
        
        
        
        
        
        
        
        
        
         -->
        
        
        
        
        
        
        
        
        
        
        
        
        
        
        
        
        
        
        
        
        
        
        
        
        
        
        
        
        
        
        
    
    
        
        
        
            
                
            
        
        
            
                
            
        
        
            
                
            
        
        
            
                
            
        
    
    
        
        
    



    
        
        
            
            
        
        
            
            
        
        
            
            
        
        
            
            
        
    

    <!-- 
        
        
     -->

    
        
            
            
        
    

    
        
        
        
        
        

        
            
            
             
             
               
                 
               
             
            
            
              
                
            
        
    

Я потратил более 3 дней на это безрезультатно. Я убедился, что ссылки xsd, которые я делаю, совместимы с версией весенней банки, которую я использую.

Любая помощь будет принята с благодарностью.

Редактировать:

Тот же запуск-context.xml работает в eclipse, его при построении через данный файл ant build.xml, который вызывает эту ошибку.

Изменить 2:

Я пытаюсь упаковать все зависящие банки в одну, жирную банку. Я столкнулся с несколькими сообщениями, в которых говорится, что я не могу этого сделать. Чтобы ссылаться на упакованную банку, мне нужен код one-jar или eclipse jarinjarloader . В противном случае мне придется держать зависшие банки вне моей главной банки. Я попробую эти варианты и вернусь, если это реальная проблема. Между тем, если у кого-либо из вас есть какие-либо материалы для этого редактирования, пожалуйста, обновите свои ответы, я буду отмечать их как правильные.

4
добавлено отредактировано
Просмотры: 1
nl ja de

3 ответы

Удаляет ли XML-редактор/валидатор по вашему выбору успешную проверку вашего контекста приложения (тот, который вы вызываете контекст запуска)? Это неверно, поскольку http://www.springframework.org/schema/batch/spring-batch-2.1.xsd недействителен.

Однако то, что вы разместили (это только отрывок?), Даже не нуждается в пространстве имен batch . Следовательно, вы можете удалить его, превратив его в действительный XML.

0
добавлено
Спасибо, что нашли время для ответа. Удаление его все еще не решает проблему, я получаю ту же ошибку. Простите меня за отсутствие опыта, но я думаю, что ссылка на spring-batch xsd действительна, поскольку она указывает на расположение схемы.
добавлено автор Juzer Ali, источник
Также забыл упомянуть, что те же пробеги через eclipse. Его при построении с данным build.xml , что он терпит неудачу. Я обновил вопрос.
добавлено автор Juzer Ali, источник

Если брандмауэр вашего сервера выполнения блокирует доступ к внешнему интернету (что обычно хорошо), вам нужно будет использовать функции spring.handlers и spring.schemas, чтобы помочь приложению проанализировать ваши файлы контекста.

Это будет ссылаться на схемы, присутствующие в ваших библиотеках фреймов, вместо того, чтобы пытаться вытащить их из Интернета.

<�Сильный> /META-INF/spring.handlers

http\://www.springframework.org/schema/batch=org.springframework.batch.core.configuration.xml.CoreNamespaceHandler
http\://www.springframework.org/schema/context=org.springframework.context.config.ContextNamespaceHandler
http\://www.springframework.org/schema/jdbc=org.springframework.jdbc.config.JdbcNamespaceHandler

<�Сильный> /META-INF/spring.schemas

http\://www.springframework.org/schema/beans/spring-beans-3.0.xsd=org/springframework/beans/factory/xml/spring-beans-3.0.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/jdbc/spring-jdbc-3.0.xsd=org/springframework/jdbc/config/spring-jdbc-3.0.xsd
http\://www.springframework.org/schema/batch/spring-batch-2.1.xsd=org/springframework/batch/core/configuration/xml/spring-batch-2.1.xsd
0
добавлено

В скрипте ant вы зависите от весны 3.0.3, и в контексте приложения вы включите весну 3.0, может быть, это проблема?

0
добавлено
Нет, это не так, я предполагаю, что xml-схема 3.0 действительна для всех Spring 3.0.x .
добавлено автор Juzer Ali, источник