Помогите запустить код на java
Доброе время суток. Начел изучать java ee. И все примеры запускал через контейнер Weld используя библиотеку weld-se-shaded-3.1.3.Final.jar. Но последние примеры перестали запускаться.
import javax.inject.Inject;
import javax.interceptor.AroundInvoke;
import javax.interceptor.InvocationContext;
import javax.persistence.EntityManager;
import javax.transaction.Transactional;
import java.util.logging.Logger;
@Transactional
public class CustomerService {
@Inject
private EntityManager em;
@Inject
private Logger logger;
public void createCustomer(Customer customer) {
em.persist(customer);
}
public Customer findCustomerById(Long id) {
return em.find(Customer.class, id);
}
@AroundInvoke
private Object logMethod(InvocationContext ic) throws Exception {
logger.entering(ic.getTarget().toString(), ic.getMethod().getName());
logger.severe(">>>" + ic.getTarget().toString() + " - " + ic.getMethod().getName());
try {
return ic.proceed();
} finally {
logger.exiting(ic.getTarget().toString(), ic.getMethod().getName());
logger.severe("<<<" + ic.getTarget().toString() + " - " + ic.getMethod().getName());
}
}
}
import javax.persistence.Entity;
import javax.persistence.Id;
import javax.persistence.Temporal;
import java.util.Date;
import static javax.persistence.TemporalType.DATE;
@Entity
public class Customer {
@Id
private Long id;
private String firstName;
private String lastName;
private String email;
private String phoneNumber;
@Temporal(DATE)
private Date dateOfBirth;
public Customer() {
}
public Customer(String firstName, String lastName, String email) {
this.firstName = firstName;
this.lastName = lastName;
this.email = email;
}
public String getFirstName() {
return firstName;
}
public void setFirstName(String firstName) {
this.firstName = firstName;
}
public String getLastName() {
return lastName;
}
public void setLastName(String lastName) {
this.lastName = lastName;
}
public String getEmail() {
return email;
}
public void setEmail(String email) {
this.email = email;
}
public String getPhoneNumber() {
return phoneNumber;
}
public void setPhoneNumber(String phoneNumber) {
this.phoneNumber = phoneNumber;
}
public Date getDateOfBirth() {
return dateOfBirth;
}
public void setDateOfBirth(Date dateOfBirth) {
this.dateOfBirth = dateOfBirth;
}
}
Подскажите как можно запустить этот код, желательно поподробнее. Файл beans присутствует. Может контейнер я в контейнере не правильно что вызываю или код вообще не рабочий подскажите кто не будь?
import javax.inject.Inject;
import javax.servlet.ServletException;
import javax.servlet.annotation.WebServlet;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import java.io.IOException;
@WebServlet("/diExample1")
public class DependecyInjectionExample extends HttpServlet {
@Inject
CustomerService bookService36;
@Override
protected void doGet(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {
System.out.println(bookService36.findCustomerById(22L));
}
}