Мой плагин для FishEye должен иметь возможность доступа к нашей Active Directory и реализовать еще некоторые функции для FishEye. Плагин должен синхронизировать с каталогом каждые X минут, поэтому он основан на SAL Scheduler. Когда я пытался использовать com.sun.jndi.ldap.LdapCtxFactory, я обнаружил, что работает только с плагином REST, но использование с SAL не загружает эти классы, даже когда я переопределял загрузчик классов. Во всяком случае, я повторно реализовать свою функциональность с Spring LDAP и когда я попытался развернуть свой плагин к FishEye я получил:Плагин Atlassian FishEye и классы Spring LDAP
2014-12-03 23:12:03,010 ERROR [ThreadPoolAsyncTaskExecutor::Thread 9 ] org.springframework.osgi.extender.internal.activator.ContextLoaderListener DefaultOsgiBundleApplicationContextListener-onOsgiApplicationEvent - Application context refresh failed (NonValidatingOsgiBundleXmlApplicationContext(bundle=com.mycompany.fisheye.ldap-restriction-plugin, config=osgibundle:/META-INF/spring/*.xml))
org.springframework.beans.factory.parsing.BeanDefinitionParsingException: Configuration problem: Unable to locate Spring NamespaceHandler for XML schema namespace [http://www.springframework.org/schema/osgi]
Offending resource: URL [bundle://84.0:0/META-INF/spring/atlassian-plugins-component-imports.xml]
Ok. Я нашел googled и нашел https://developer.atlassian.com/docs/faq/troubleshooting/dependency-issues-during-plugin-initialisation Написано, что я должен изменить область зависимости до при условии, что избегает конфликтов. Хорошо, я сделал это. Но теперь у меня есть еще одно исключение:
Exception in thread "PluginSchedulerTask-com.mycompany.fisheye.LdapRestrictio nComponentImpl:job" java.lang.NoClassDefFoundError: org/springframework/ldap/core/support/LdapContextSource
Я пытался поставить пружинную Ldap-ядро-1.3.2.RELEASE.jar до $ fisheyeDir/Lib и ничего не происходит - загрузчик не подхватить эту БАНКУ.
Кто-нибудь знает, что можно сделать в этой ситуации? Должен ли я использовать другую структуру LDAP или можно перетащить эту реализацию клиента ldap в путь к классам?
FishEye версия 3.6.1 (последняя), пружинные банки в classpath версии 3.0.5.RELEASE. Моя зависимость spring-security-ldap также 3.0.5.RELEASE.
Заранее спасибо.
miszobi, спасибо за Ваш ответ! Плагин уже завершен и постоянно работает на нашем экземпляре FishEye. Я использовал UnboundID SDK и удалил весь код Spring, и теперь все хорошо. – Maxxon