есть ли способ решить во время выполнения, какой класс из какого jar (развернутого в jboss) будет использоваться?
Вот пример:
VERSION1.JAR
package com.something;
public class MyObject {
public void saySomething() {
System.out.println("Output from version 1");
}
}
VERSION2.JAR
package com.something;
public class MyObject {
public void saySomething() {
System.out.println("Output from version 2");
}
}
Так что в обоих банках один и тот же класс в одном пакете, но они делают разные вещи. Теперь я хочу загрузить MyObject, но скажите ему, из какой банки я хочу это использовать:
package com.main
public class Main{
public static void main(String[] args) {
MyObject v1 = new MyObject();
v1.saySomething();
MyObject v2 = new MyObject();
v2.saySomething();
}
}
Это возможно? Я использую Jboss в качестве сервера приложений, и я делаю это в рамках проекта ejb. Так что этот пример просто чтобы объяснить, что я имею в виду. Я думаю, может быть, с помощью контекста?