Spring не может найти банку вне EAR - выпуск сообщества WebSphere
У меня есть слух, развернутый в WebSphere Application Server Community Edition, который использует пружину для загрузки различных интерфейсов. Для производства все эти классы загружаются в ухо. Я пытаюсь переопределить эти классы другим классом в банке за пределами EAR.
Я поместил свой jar в /var/shared/lib и у меня есть зависимость развертывания, которая, как я думал, включит эти папки в classpath:
<sys:dependencies>
<sys:dependency>
<sys:groupId>org.apache.geronimo.configs</sys:groupId>
<sys:artifactId>sharedlib</sys:artifactId>
</sys:dependency>
</sys:dependencies>
Что мне не хватает? Результатом Spring является NoClassDef, заявляющий, что класс не может быть найден.
1 ответ
У Websphere есть общая библиотека. Добавьте свой jar в разделяемую библиотеку, а затем добавьте эту библиотеку в свое приложение, используя консоль администратора websphere.
Using shared libraries at the application level
To define a shared library named VersionCheckerV2_SharedLib and associate it
to our ClassloaderTest application, do the following steps:
1. In the administrative console, select Environment → Shared Libraries.
2. Select the scope at which you want this shared library to be defined, such as
Cell, and click New
Добавить
Select Applications → Application Types→ WebSphere enterprise
applications.
6. Select the ClassloadersExample application.
7. In References, select Shared library references.
8. Select AppName in the Application row.
9. Click Reference shared libraries.
10.Select the VersionCheckerV2_SharedLib and click the >> button to move it
to the Selected column
использование shared library
для этой задачи. Используйте эту книгу для справки.