Наше приложение основано на концепции тощей войны (http://maven.apache.org/plugins/maven-war-plugin/examples/skinny-wars.html).
.
|-- META-INF
| `-- application.xml
|-- lib
| -- core application jars
| -- spring jars
| -- common jar
|-- war1-1.0.0.war
| --war1-jar1-1.0.0.jar
`-- war2-1.0.0.war
| --war2-jar1-1.0.0.jar
У нас есть пружинные банки и другие основные банки приложений, загруженные на уровне приложений.Обычный jar-файл и основной jar-файл приложения имеют свои собственные applicationContext.xml.Также у войн есть свои собственные веб-фляги, у которых есть applicationContext.xml, определенный для каждой войны.Мы заметили, что автоматическое подключение (в классах jar основного приложения) не удалось при запуске приложения, и мы видим ошибки, как указано в файлах журналов, прилагаемых к настоящему документу.
Ниже приведены наблюдения:
- Автопроводка работает нормально, если все банки, загруженные на уровне приложения, перемещаются в отдельные войны (WEB-INF / lib).
- Автопроводка работает нормально, если классы в основных jar-приложениях имеют открытые средства доступа, что по умолчанию для целей безопасности и инкапсуляции.
Мы должны следовать концепции тощей войны, и основные банки приложения не могут быть изменены.