У меня есть программный код, который хорошо работает при развертывании (на локальном затмении коллеги и на этапах BETA / PROD), но каким-то образом аннотация @EJB не разрешается должным образом, когда я выполняю локальное развертывание / отладку в Eclipse с использованием Weblogic12R2 (12.2.1), инициализирующий объект как null
и, следовательно, выбрасывающий NullPointerException
.
Вот фрагмент кода:
FileUtilsMB.java
import javax.annotation.Resource;
import javax.ejb.EJB;
import javax.ejb.TransactionAttribute;
import javax.ejb.TransactionAttributeType;
import javax.faces.application.FacesMessage;
import javax.faces.bean.ManagedBean;
import javax.faces.bean.ViewScoped;
import javax.faces.context.FacesContext;
import javax.interceptor.Interceptors;
import javax.sql.rowset.serial.SerialException;
import org.primefaces.event.FileUploadEvent;
import org.primefaces.event.SelectEvent;
import org.primefaces.model.DefaultStreamedContent;
import org.primefaces.model.StreamedContent;
@ManagedBean (name = "fileUtilsMB")
@ViewScoped
public class FileUtilsMB {
PublicacionDoc publicacionDoc = new PublicacionDoc();
@EJB
private PublicacionEJBService publicacionEJBService;
public void pruebamet() throws Exception{
// more code...
listDoc = publicacionEJBService.selectDoc(publicacionDoc); // here throws the NPE
// debugging shows that publicacionEJBService is null
// more code...
}
}
PublicacionEJBService.java
import java.util.List;
import javax.ejb.Local;
@Local
public interface PublicacionEJBService {
public List<PublicacionDoc> selectDoc(final PublicacionDoc publicacionDoc) throws Exception;
// several methods
}
Я полагаю, что это проблема окружающей среды (локальный Weblogic или Eclipse), пожалуйста, запросите дополнительную информацию, потому что я не знаю, какая информация может быть полезной.Я не нашел полезной информации для поиска этой проблемы, любая помощь приветствуется.