Wygenerowałem w Netbeans encje na podstawie konkretnej bazy danych oraz kontrolery encji. W tym poradniku każdy z kontrolerów pobiera w konstruktorze implementację interfejsu EntityManagerFactory i o ile wiem mniej więcej jak pobrać obiekt tego typu to w Netbeans 8.2 mam dodatkowo parametr UserTransaction i nie za bardzo rozumiem skąd mam to pobierać.
Przykładowy konstruktor w kontrolerze:
public CustomerJpaController(UserTransaction utx, EntityManagerFactory emf) {
this.utx = utx; //skąd to wziąć?
this.emf = emf;
}
I przykładowa metoda w servlecie:
protected void processRequest(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException {
response.setContentType("text/html;charset=UTF-8");
try (PrintWriter out = response.getWriter()) {
/* TODO output your page here. You may use following sample code. */
EntityManagerFactory factory = Persistence.createEntityManagerFactory("sample.EclipseLink");
CustomerJpaController customerJpaController = new CustomerJpaController(/* skad wziąć ten obiekt */, factory);
request.getRequestDispatcher("login.jsp").forward(request, response);
}
Czy mógłby mi ktoś wyjaśnić jak tego prawidłowo używać i w jakim miejscu najlepiej tworzyć obiekty kontrolerów (serwlet czy może inny obiekt)