Есть WAR приложение. Требуется:
1. Из этого приложения обращаться к некоторым внешним классам.
2. Эти классы должны деплоиться/убираться из JBoss автоматически.
Создаю sar приложение с MBean'ом, который будет сообщать список известных ему классов ну
и при необходимости создавать экземпляры этих классов. Этот MBean реализует некоторый интерфейс, скажем, Factory.
А классы реализуют интерфейс Plan.
Вопрос: как из основного WAR приложения, получив доступ к MBean'у, преобразовать его к этому интерфейсу?
пишу Factory f = (Factory)new InitialContext().lookup("something");
Если Factory не определана в WAR — ошибка NoClassDefFound. Если определена — ClassCastException.
Причем он именно таки получает доступ к этому Bean'у. Если пишу
Object f = (Object)new InitialContext().lookup("something");
то все нормально и в debug вижу нужный интерфейс.