I have problem in configuring JNDI lookup for ejb3.1 and weblogic 12c, jdk1.6
@Remote
public interface Bank{
public String accounts();
}
@Stateless(name="BankSession")
public class BankSessionBean implements Bank{
@Override
public String accounts() {
//////// }
ejb-jar.xml:
<enterprise-beans>
<session>
<display-name>BankSession</display-name>
<ejb-name>BankSession</ejb-name>
<business-remote>com.examples.Bank</business-remote>
<ejb-class>com.examples.BankSessionBean</ejb-class>
<session-type>Stateless</session-type>
<transaction-type>Bean</transaction-type>
</session>
<enterprise-beans>
weblogic-ejb-jar.xml:
<weblogic-enterprise-bean>
<ejb-name>BankSession</ejb-name>
<jndi-name>BankSession</jndi-name>
</weblogic-enterprise-bean>
client code:
때 JNDI이 구문을 자바 사용하여 조회 사용을 시작 : 오류 다음 완/ENV/EJB/BankSessionEJB 3.1, 웹 로직 12C, 자바 1.6 JNDI 조회 문제
그것의 기부를.
javax.naming.NameNotFoundException : 'java : comp/env/ejb/BankSession'을 (를) 검색하는 동안 하위 컨텍스트가 없습니다.
여기서 ejbbean 및 클라이언트 코드는 다른 jvm에서 실행됩니다.
내가 사용해야하는 Jndi는 어느 것입니까?
- 자바 : 광고/ENV/EJB/BankSession '
- 자바 : 글로벌/applicationName에/MODULENAME/BankSession
- 자바 : 모듈/BankSession
- 자바 : 응용 프로그램/MODULENAME/BankSession
java : comp/env/ejb/BankSession은 ejb 3.0 및 oc4j 서버에서 잘 작동합니다.
ejb3.1 및 weblogic 12c로 마이그레이션 할 때 작동하지 않습니다.
weblogic deployment xml 파일을 사용하지 않고도 시도해 보았습니다. 동일한 문제가 발생했습니다.
여기서 내 Jndi를 어떻게 구성해야합니까? 오랫동안이 문제에 직면 해 있습니다.
java : comp/env /에 대해 ejb ref를 추가해야하는 배포 설명자는 무엇입니까? 나는 ejb ref가 이미 application-client.xml 파일에있다. \t EJB/BankInquirySession EJB-REF 이름> 세션 EJB-REF 형> com.examples.Bank BankInquirySession \t –
user3791049
bean (ejb, servlet, java 클라이언트)의 클라이언트는 어떤 모듈/컴포넌트입니까? 해당 모듈/구성 요소에 대한 참조를 추가해야합니다. Application-client.xml은 두꺼운 Java 클라이언트에 대한 설명자이므로 잘못된 것입니다. – Gas
아 좋아요. 나는 당신이 애플리케이션 클라이언트로부터 조회를했음을 압도했다. 응용 프로그램 클라이언트에서 조회를 수행하면 java : app/...가 작동하지 않을 수 있습니다. 그런 다음 ejb-ref/BankInquirySession을 BankInquirySession으로 해결하고 java : comp/env/BankInquirySession을 조회 할 것을 권장합니다. –