У меня есть приложение JavaEE6, работающее на Glassfish v3.0.1 с EJB 3.1 (приложение упаковано как WAR), и все мои EJB - @LocalBeans.
В настоящее время я пишу FacesConverter для использования в JSF2, в котором мне нужен EntityManager, чтобы получить Entity обратно из идентификатора.
Теперь мне интересно, какой самый лучший и лучший способ 1004 * получить Entitymanager внутри FacesConverter, теперь, когда мы находимся на JEE6? Или я могу даже получить доступ к EJB через язык выражений? И Weld / CDI не работает внутри FacesConverter или нет?
@FacesConverter(value="subscriptionListConverter")
class SubscriptionListConverter extends Converter {
public Object getAsObject(FacesContext ctx, UIComponent comp, String value) {
var id:Long = Long.parseLong(value);
// How to get the entitymanager?
return em.find(User.getClass, id);
}
public String getAsString(ctx:FacesContext, comp:UIComponent, value:Object) {...}
}
Извините, я надеюсь, что это не дубликат, но в большинстве случаев я видел немного отличающиеся и не очень мне помогли.