2016-06-19 28 views
2

Ich entwickle eine Anwendung unter Websphere Application Server v8.0 und ich brauche org.codehaus.jackson:jackson-core-asl und org.codehaus.jackson:jackson-mapper-asl Version 1.9.2 (verpflichtend).Kann ich eine neuere Version von Jackson als in Websphere 8.0 gebündelt verwenden?

Auf WAS 8.0 sind solche Bibliotheken bereits in seiner Laufzeit enthalten, aber seine Version ist älter. Es ist 1.6.2 (Sie es in diesen Bildern sehen): http://i.stack.imgur.com/dTv4a.gif und http://i.stack.imgur.com/Vs3TM.gif

I 1.9.2 Gläser auf dem Classpath hinzugefügt, aber die Anwendung verwendet Bibliotheken, die in WAS (1.6.2) gebündelt sind, Ignorieren die im Klassenpfad.

Aus diesem Grund kann ich einige Jackson-Funktionen in Version 1.9.2, die nicht in 1.6.2 waren, nicht verwenden.

Meine Frage ist: Ist es möglich, WAS zu konfigurieren, nicht Jackson aus seinen eigenen gebündelten Gläsern zu verwenden, und die Anwendung Jars aus Classpath verwenden zu lassen?

Antwort

2

Um die vom Server bereitgestellte Vrrsion zu überschreiben, wenn sie von Ihrer Anwendung aufgerufen wird, fügen Sie die Bibliothek zu einer isolierten isolierten Bibliothek hinzu und verknüpfen Sie sie mit Ihrer App.

+0

Würde eine isolierte gemeinsame Bibliothek eine WAS-Standardbibliothek überschreiben? Oder wäre es besser, die Classloader-Konfiguration "PARENT_LAST" zu verwenden, um dies zu erreichen? – Haxiel

+0

Dafür sind isolierte Shared-Bibliotheken gedacht. Es ist weniger wahrscheinlich als Eltern-Leisten, etwas anderes zu brechen. – covener