JBoss 5.1의 Java EE 빈에서 빈 EntityManager (Empty EntityManager in Java EE bean on JBoss 5.1)


문제 설명

JBoss 5.1의 Java EE 빈에서 빈 EntityManager (Empty EntityManager in Java EE bean on JBoss 5.1)

저는 Java EE의 초보자입니다. 이것은 제가 하려고 하는 첫 번째 프로젝트이고 해결할 수 없는 문제가 있습니다.

저는 세 개의 프로젝트를 만들었습니다. slowka‑beans(EJB), slowka‑persistance(JPA ) 및 slowka‑web(JSF). 배포한 후에는 지속성 단위에 액세스할 수 없습니다. EntityManager는 null입니다. 모든 것이 잘 작동합니다. 빈을 만들고 그 안에 엔티티 클래스를 인스턴스화하고 JSF 페이지에 표시할 수 있습니다. 하지만 DB에 어떻게 저장할 수 있습니까? JBoss 사이트에 MySQL 데이터베이스가 구성되어 있습니다.

내가 가지고 있는 코드는 다음과 같습니다. LanguagesManager.java(slowka‑beans)

@Stateless
public class LanguagesManager implements LanguagesManagerLocal {

    @PersistenceContext(unitName="slowka‑persistance")
    private EntityManager em;

    public LanguagesManager() {
        System.out.println("LanguagesManagerBean constructor");
    }

    public String getWorking() {
        if(em == null) {
            System.out.println("Not working...");
            return "Not working...";
        } else {
            System.out.println("It's ALIVE!");
            return "It's ALIVE!";
        }
    }
}

persistence.xml(slowka‑persistance):

<?xml version="1.0" encoding="UTF‑8"?>
<persistence version="1.0" xmlns="http://java.sun.com/xml/ns/persistence" xmlns:xsi="http://www.w3.org/2001/XMLSchema‑instance" xsi:schemaLocation="http://java.sun.com/xml/ns/persistence http://java.sun.com/xml/ns/persistence/persistence_1_0.xsd">
    <persistence‑unit name="slowka‑persistance">
        <provider>org.hibernate.ejb.HibernatePersistence</provider>
        <jta‑data‑source>java:/PraktykiDS</jta‑data‑source>
        <class>pl.edu.uj.sobczak.szymon.Language</class>
    </persistence‑unit>
</persistence>

이를 서버에 배포해도 예외가 발생하지 않습니다. 하지만 서버의 출력에서 다음 경고를 발견했습니다.

23:02:23,801 INFO  [PersistenceUnitDeployment] Starting persistence unit persistence.unit:unitName=slowka.ear/slowka‑persistance.jar#slowka‑persistance
23:02:23,803 INFO  [Ejb3Configuration] Processing PersistenceUnitInfo [
    name: slowka‑persistance
    ...]
23:02:23,804 WARN  [Ejb3Configuration] Persistence provider caller does not implement the EJB3 spec correctly. PersistenceUnitInfo.getNewTempClassLoader() is null.
(... trimmed ...)
23:02:23,868 INFO  [SessionFactoryObjectFactory] Bound factory to JNDI name: persistence.unit:unitName=slowka.ear/slowka‑persistance.jar#slowka‑persistance
23:02:23,868 WARN  [SessionFactoryObjectFactory] InitialContext did not implement EventContext

JSP에서 LanguagesManager::getWorking()에 액세스할 때마다 "Not working..." 출력이 나타납니다.

프로젝트를 만들었습니다. Eclipse에서 JPA는 EclipseLink를 사용하고 있습니다. 동일한 결과로 EclipseLink 1.1.4 및 2.1.0을 모두 시도했습니다.

도와 주시겠습니까?


참조 솔루션

방법 1:

Don't call EJBs from JSPs. Call them from servlets, where you inject them with @EJB.

If you instantiate the object manually, then injection does not happen. The object (ejb) must be instantiated by the EJB container.

(by ssobczakBozho)

참조 문서

  1. Empty EntityManager in Java EE bean on JBoss 5.1 (CC BY‑SA 3.0/4.0)

#jakarta-ee #ejb-3.0 #JSP #jboss5.x #jpa






관련 질문

주입을 통해 JBoss AS의 다른 WAR에서 EJB에 액세스 (Access EJB from different WAR in JBoss AS via injection)

데이터베이스 필드를 매일 확인하려면 어떻게 해야 합니까? 크론 작업? (How can I check database field every day?Cron job?)

Java ee netbeans에서 javadocs를 첨부하는 방법 (How to attach javadocs in java ee netbeans)

날짜 차이 제한 최대 절전 모드 (Date difference in days Restriction Hibernate)

Wildfly 8.2.1에서 EJB 2.1에 액세스할 때 ClassCastException이 발생하는 이유는 무엇입니까? (Why I am getting ClassCastException when accessing EJB 2.1 in Wildfly 8.2.1?)

WebLogic Application Server(10.3.6)가 큰 크기의 이어 파일 배포, 중요한 CSRF로 실패함 (WebLogic Application Server (10.3.6) fails with Large sized ear file deployment, critical CSRF)

개체 배열을 설정하는 동안 FindBug 오류 '변경 가능한 개체에 대한 참조를 통합하여 내부 표현을 노출할 수 있음'을 수정하는 방법은 무엇입니까? (How to Fix FindBug error 'May expose internal representation by incorporating reference to mutable object' while setting Array of Objects?)

Stateless EJB가 역직렬화될 때 @Resource 주석이 적용됩니까? (Is the @Resource annotation applied when a Stateless EJB is deserialized?)

Eclipse 및 웹 프로젝트 가져오기, 서버에서 실행 누락! (Eclipse and Web Project import, run on Server missing!)

Spring 다중 모듈 프로젝트를 설정하는 방법은 무엇입니까? (How to setup a Spring multimodule project?)

JBoss 5.1의 Java EE 빈에서 빈 EntityManager (Empty EntityManager in Java EE bean on JBoss 5.1)

사용자가 찾을 수 없는 페이지를 요청했는지 감지하는 필터를 만드는 방법은 무엇입니까? (How to make a filter to detect if the user requested a page that is not found?)







코멘트