2013-05-17 10 views
6

Wir werden den WebSphere 8.0 App Server in unserer Entwicklung verwenden.
Unsere Webanwendung verwendet Amazon aws java sdk, die wiederum Apache http-client 4.1 verwendet.
Aber auch WebSphere hat in seinen Bibliotheken HTTP-Client-Klassen, die mit dem HTTP-Client in unserer Web-App kollidieren.
Ich habe mit WebSphere nächste Liste der http-Client-Klassen verteilt gefunden:So laden Sie Klassen, die sich in Java EE-App-Bibliotheken befinden, zuerst und nicht von Java EE App Container

\ WebSphere \ AppServer \ Plugins \ com.ibm.ws.prereq.jaxrs.jar (http-Client 4.0.1)
\ WebSphere \ AppServer \ Runtimes \ com.ibm.jaxrs.thinclient_8.0.0.jar

Also, meine Frage ist: Wie Klassen in meiner Anwendung befindet sich zuerst laden, anstatt von WebSphere App Container zur Verfügung gestellt?

Antwort

7

Von Admin-Konsole finden Sie unter:

Anwendungen> Websphere Enterprise Applications> YourApplication> Module verwalten> YourModule

und die "Class Loader, um" zu Eltern zuletzt geändert werden.

Dann starten Sie die Anwendung neu.

+0

Ich hatte diese Option früh erkundet, aber es scheint, dass es nicht funktioniert. Scheint, dass zusätzliche benutzerdefinierte Klassenladeprogramme verwendet werden müssen. –

+1

Testen Sie Anwendungen> Websphere Enterprise-Anwendungen> YourApplication> Module verwalten> YourModule, und ändern Sie die Reihenfolge der Klassenladevorgänge zuletzt in Parent. Dann neu starten. – trikelef

+0

O mein Gott !!! Ich habe fast zwei Tage damit verbracht, dieses Problem zu lösen. Ich habe viele Dokumentationen gemacht. Aber anscheinend habe ich einen Punkt übersehen, der für Module in "Module verwalten" -Menü getan werden sollte. Danke noch einmal! –