2011-01-09 3 views
0

Initial ProblemJSF2: Обращение RMI соединения с Weblistener к ManagedBeans

Привет,

Я использую @WebListener класс инициировать соединение RMI при развертывании приложений. Это связывает мой интерфейс JSF с бэкэнд.

Это нормально работает!

Далее Я хочу передать соединение ManagedBean, потому что я хочу использовать соединение, например. сохранить что-то из bean-компонента, так как weblistener недоступен из xhtml-страниц.

Я попытался поместить managedProperty в этот класс, но я думаю, что это запрещено. Итак, как это сделать?

@WebListener 
public class Config implements ServletContextListener { 

public static final String SERVER_NAMING = "xxx"; 
public static final String SERVER_HOST = "xxx"; 

public static FrontendCommInterface server; 


public void contextInitialized(ServletContextEvent event) { 
    try { 

     server = (FrontendCommInterface) Naming.lookup("rmi://" + SERVER_HOST + "/" + SERVER_NAMING); 
      System.out.println("Connection successfull!"); 
//HERE THE SERVER SHOULD HANDED TO ANOTHER MANAGEDBEAN !!! BUT HOW TO DO THAT??? 

     } catch (MalformedURLException e) { 
     System.out.print("Error: " + e.getLocalizedMessage()); 
    } catch (RemoteException e) { 
     System.out.print("Error: " + e.getLocalizedMessage()); 
    } catch (NotBoundException e) { 
     System.out.print("Error: " + e.getLocalizedMessage()); 
    } 
} 

public void contextDestroyed(ServletContextEvent event) { 
    // Do stuff during webapp's shutdown. 
} 

ответ

2

Вам необходимо создать компонент и поместить его в область применения самостоятельно.

event.getServletContext().setAttribute("communication", new Communication(server)); 
+0

Я могу использовать ManagedProperties в WebListners? – Sven

+0

Нет, определенно нет. Обратите внимание, что я обновил ответ, так как неправильно понял начальную проблему из-за отсутствия кофе этим утром;) – BalusC

+0

Нет проблем :-D. Но в то же время я попытался добавить ваш другой совет, который включал postConstruct, и он работает :-) Спасибо – Sven

Смежные вопросы