서블릿에서 가져 오는 매개 변수에 따라 EJB 객체를 동적으로 호출하려는 서블릿이 있습니다.자바가 서블릿에서 EJB를 호출합니다.
EJB 객체와 메소드를 호출하는 가장 좋은 방법은 무엇입니까?
UPDATE : 예를 들어 , 나는이 얻을 매개 변수는 세션빈의 이름이고, 그래서 (그것의 이름)을 호출 한 다음 내부의 몇 가지 방법을 호출 할, 그래서 동적으로 생성됩니다.
감사의 말을 전하고 싶습니다.
서블릿에서 가져 오는 매개 변수에 따라 EJB 객체를 동적으로 호출하려는 서블릿이 있습니다.자바가 서블릿에서 EJB를 호출합니다.
EJB 객체와 메소드를 호출하는 가장 좋은 방법은 무엇입니까?
UPDATE : 예를 들어 , 나는이 얻을 매개 변수는 세션빈의 이름이고, 그래서 (그것의 이름)을 호출 한 다음 내부의 몇 가지 방법을 호출 할, 그래서 동적으로 생성됩니다.
감사의 말을 전하고 싶습니다.
JNDI 조회를 통해이를 수행 할 수 있습니다.
InitialContext ic = new InitialContext();
MyEJB ejb = (MyEJB) ic.lookup("java:comp/env/MyEJB");
이
은 서블릿 매개 변수를 기반으로 조회 문자열을 생성, MyEJB의 원격 인터페이스를 검색합니다. 메소드에 대한 단서가 없다면, 리플렉션을 사용하여 알아 내야합니다.@EJB
주사의 전체 시리즈없이이 결과를 얻는 가장 쉬운 방법은 조회를 사용하는 것입니다. 의 당신이 EJB1의 인스턴스를 필요로 파악했다고 가정하자 조회 코드는 다음과 같이 표시됩니다
private EJB1 ejb1 = null;
try {
InitialContext ic = new InitialContext();
ejb1 = (EJB1)
ic.lookup(ejb1.class.getName());
ejb1.method1();
} catch (Exception ex) {
logger.log(Level.SEVERE,"Couldn’t create converter bean.",ex);
}
것은 우리 서버의 예를 확인 정확한 구문은 InitialContext를 및 조회의 생성에 사용하는 요구.
ID가 서블릿에 주어진 매개 변수 (컨텍스트 검색을 의미 함)에 의존하는 EJB를 호출하거나 항상 동일한 EJB에서 호출되는 메서드 만 수정 하시겠습니까? – fvu
@fvu :'서블릿에 부여 된 매개 변수에 따라 ID가 다른 EJB를 호출합니다 .' - 이것이 내가 원하는 것인데, EJB가 존재하지 않기 때문에 이름으로 생성하고 몇 가지 메소드를 호출하고 싶습니다. 감사합니다. – user590586