Я пытаюсь улучшить свое понимание удаленного вызова EJB.Лучший способ вызвать удаленный EJB
У меня есть код вроде этого рабочего, который делает удаленный поиск JNDI на моем сервере:
private InitialContext jndiContext;
private AdderBeanRemote bean1;
Properties props = new Properties();
props.put(Context.INITIAL_CONTEXT_FACTORY, "com.sun.enterprise.naming.SerialInitContextFactory");
props.setProperty("org.omg.CORBA.ORBInitialHost", "10.0.0.99");
props.setProperty("org.omg.CORBA.ORBInitialPort", "3700");
jndiContext = new InitialContext(props);
bean1 = (AdderBeanRemote) jndiContext.lookup("com.suspectclass.sgifford.test8bean.AdderBeanRemote");
Но это, кажется, путь к сложному, и жёстко много данных конкретного приложения в моем приложении; например, если бы я хотел использовать другой сервер или перенумеровать свою сеть, мне пришлось бы изменить мое приложение, а затем перекомпилировать и повторно развернуть.
Я видел некоторые решения, которые используют «jndi.properties», но до сих пор я не работал, и, во всяком случае, мне все равно потребуется перекомпилировать и переделать, чтобы что-то изменить.
Есть ли более простой способ сделать это, что не требует жесткого кодирования моей информации о сети в моем приложении? Или это лучшее, что я могу сделать?
Спасибо!
----- Скотт.
Спасибо, мне нужно узнать больше о конфигурации-resources.jar! – sgifford
Возможно, я вас обманул. Я имел в виду, что вы можете упаковывать конфигурационные файлы в отдельный .jar, а не связывать их в своем приложении. Здесь нет понятия, это просто имя, которое я придумал. –
А, я вижу, я googled «configuration-resources.jar» и придумал некоторые хиты, поэтому я подумал, что это что-то. Значит, они просто будут отдельным JAR в моем приложении WAR или EAR? – sgifford