Java WAR - Laden Sie Spring Beans aus einer externen JAR

Ich möchte in meine Spring MVC-Webanwendung (verpackt als WAR) einige Spring Framework-Beans laden, die mit Anmerkungen versehen sind@Service aus einem externen Glas, das für den Zugriff auf eine Datenbank zuständig ist, undbefindet sich im Klassenpfad unter / WEB-INF / lib. Wenn möglich, wäre es wünschenswert, diese automatisch mit dem zu laden@Autowired Anmerkung.

Ich habe die Lösung in diesem erfolgreich verfolgtlink1:

this.ctx = new ClassPathXmlApplicationContext("services-context.xml");
this.myAService = ctx.getBean("myAService");

Diese Lösung verwendet jedoch die Spring-API-FunktiongetBean was als schlechte Praxis angesehen wird (vgllink2).

Ich habe auch ohne Glück zwei weitere Dinge versucht, um die Anwendung des externen Glases zu laden.

WAR´s appContext.xml:

<import resource="classpath*:/WEB-INF/lib/pathToExternalJar/applicationContext.xml">

WAR´s web xml -> lade den jar´s appContext wie hier beschrieben (link3). (z. B. * applicationContext.xml):

    <context-param>
        <param-name>contextConfigLocation</param-name>
        <param-value>
            classpath:localSpringContext.xml
            classpath:*applicationContext.xml
        </param-value>
    </context-param>

Was ist der beste Ansatz, um diese Bohnen richtig zu laden und wie sollte es gemacht werden?

Antworten auf die Frage(1)

Ihre Antwort auf die Frage