2012-03-26 2 views
0

EJB를 생성하고 jar 파일을 생성했습니다 (필수 ejb-jar.xml 및 weblogic-ejb-jar.xml 파일 포함). WebLogic 서버에 EJB를 배치 할 수 없습니다. 12c

내가 관리 콘솔을 사용하여 서버 12C를 웹 로직이 항아리를 추가

, 내가이 때문에 내 EJB에

Issues were encountered while parsing this deployment to determine module type. Assuming this is a library deployment. 

문제 - 다음 얻을은 JNDI 트리보기에 표시되지 않습니다. 그래서 나는 jndi 조회를 할 수 없다. 제 실수를 바로 잡으십시오.

EJB-jar.xml- 당신이 생각하는 것 같다 무엇

<?xml version="1.0" encoding="UTF-8"?> 
<!DOCTYPE ejb-jar PUBLIC "-//Sun Microsystems, Inc.//DTD Enterprise JavaBeans 2.0//EN" "http://java.sun.com/dtd/ejb-jar_2_0.dtd"> 
<ejb-jar id="ejb-jar_ID"> 
    <display-name>ProductManager</display-name> 
    <enterprise-beans> 
    <session> 
    <ejb-name>Product</ejb-name>  
    <home>rohit.ProductHome</home> 
    <remote>rohit.ProductRemote</remote> 
    <ejb-class>rohit.ProductBean</ejb-class>  
    <session-type>Stateless</session-type> 
    <transaction-type>Container</transaction-type> 
    </session> 
    </enterprise-beans> 
    <ejb-client-jar>ProductManagerClient.jar</ejb-client-jar> 

</ejb-jar> 

웹 로직에서 EJB-jar.xml-

<?xml version=“1.0? encoding=“UTF-8??> 
<weblogic-ejb-jar 

xmlns=“http://www.bea.com/ns/weblogic/90? xmlns:j2ee=“http://java.sun.com/xml/ns/j2ee” xmlns:xsi=“http://www.w3.org/2001/XMLSchema-instance” xsi:schemaLocation=“http://www.bea.com/ns/weblogic/90 http://www.bea.com/ns/weblogic/90/weblogic-ejb-jar.xsd”> 

<welogic-enterprise-bean> 
<ejb-name>Product</ejb-name> 
<jndi-name>Product</jndi-name> 
<stateless-session-descriptor></stateless-session-descriptor> 
</welogic-enterprise-bean> 
</weblogic-ejb-jar> 
+0

제발, 여기 좀 도와주세요. –

답변

1

반대로, EJB-jar.xml의 및 weblogic- ejb-jar.xml 파일은 필요하지 않습니다. 기본 배포 설명자로 2004 년의 고대 유물입니다.

ProductHome 등급은 올바른 판단을 위해 제거해야합니다. 이 시대는 완전히 완전히 불필요한 EJB2 아티팩트입니다.

@Stateless 
public class ProductBean { 
    // ... 
} 

항아리이 최대 및 배포 :

은 EJB를 시작하려면, 당신이 필요로하는 모든는 @Stateless 주석과 POJO이다. 그게 다야. Bean에 명시 적으로 이름을 지정할 필요가 없으며 (이름을 얻을 수 있습니다.) 일부 XML 파일에서 해당 존재를 선언 할 필요가 없습니다.

0

ejb-jar.xml은 응용 프로그램을 jar 파일로 배포 할 때 필수입니다. 정확한 위치는 항아리의 META-INF에 있습니다.

예, 주석은 확실히 좋고 유지하기 쉽습니다. ejb-jar.xml을 최소한으로 남겨 두어보십시오.

항상 응용 프로그램을 EAR에있는 jar 파일과 함께 패키지로 만듭니다. 이 경우 application.xml 파일이 필요합니다.

컨테이너가 응용 프로그램으로 jar를 인식하지 못하는 것 같습니다. ejb-jar.xml의 위치를 ​​확인하거나 EAR 패키징을 사용하십시오.

관련 문제