Я строю веб-проект, выполняемый в Weblogic 12с (EE 6), представляет собой веб-приложение, я настроил проект с:Вводят Spring Data Repository в EJB
JSF 2 + EJB 3 + Spring Data
у меня есть репо, как это:
public interface ColectorRepository extends JpaRepository<PEBTable, Integer>{
@Query("select t from PEBTable t where t.id >= ?1 and t.id <= ?2")
public List<PEBTable> findByRange(Integer a, Integer b);
}
, а также у меня есть этот способ вызова репо в EJB, и у меня нет проблемы, чтобы назвать это таким образом, это работает отлично, и мне нравится его:
@Stateless
public class PEBGenericParser implements PEBGenericParserLocal {
@PersistenceContext(unitName = PEBCons.PEB_PU)
private EntityManager emPeb;
@Override
public List<PEBTable> getData() {
JpaRepositoryFactory jrf = new JpaRepositoryFactory(emPeb);
ColectorRepository repo = jrf.getRepository(ColectorRepository.class);
return repo.findAll();
};
}
Что я ищу? Ну, я хотел бы назвать репозиторий каким-то элегантным способом, используя аннотации CDI, аннотации Spring или что-то еще, избегая использования springs xml (spring-config.xml и т. Д.), Мне нравятся данные Spring, но я предпочитаю избегать всех эти xml-конфигурации и просто сохраняйте мой persistence.xml, как я делаю.
Я хотел бы сделать, что-то вроде:
@Stateless
public class PEBGenericParser implements PEBGenericParserLocal {
@PersistenceContext(unitName = PEBCons.PEB_PU)
private EntityManager emPeb;
@Inject
private ColectorRepository repo;
@Override
public List<PEBTable> getData() {
return repo.findAll();
};
}
я оценить любые предложения.
Не можете вы просто @Autowire это? – Raffaele