Почему application.xml не работает как файл конфигурации для приложения с весенней загрузкой? - PullRequest
0 голосов
/ 19 февраля 2019

Я играю с инициализатором весенней загрузки, и я нашел что-то, что я не совсем понимаю.

Я создал новый проект только с веб-зависимостью и добавил один компонент с аннотациями @Configuration и @ImportResource.

@Configuration
@ImportResource({"classpath*:application.xml"})
public class CollectionConfig {

Затем я добавил пустой файл XML-бинов- application.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:context="http://www.springframework.org/schema/context"
       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">
</beans>

При запуске приложения появляется ошибка: Caused by: org.xml.sax.SAXParseException: Document root element "beans", must match DOCTYPE root "null".

Однако при изменении имени файла с application.xml на любое другое имя, например applicationContext.xml или myBeansInAFile.xml, приложение запускается нормально.

Я не могу найти другое приложениеXML-файл в пути к классам веб-приложения spring-boot по умолчанию.Возможно, это зарезервированное слово?Я чувствую, что упускаю здесь что-то фундаментальное, но не могу найти на это никакой ссылки.

По сути, я пытаюсь понять, почему использование файла XML с именем application.xml не разрешено при весенней загрузке.

...