Weblogic:在ejb-jar文件中找不到EJB

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Weblogic:在ejb-jar文件中找不到EJB相关的知识,希望对你有一定的参考价值。

当我尝试将Java EE项目部署到weblogic 12c时,出现以下错误

No EJBs found in the ejb-jar file

但是,这只发生在我部署EAR源文件夹并让weblogic编译它时(拆分开发目录)。如果我首先使用ant构建EAR并部署它,它会部署得很好。

我认为这个问题与EJB模块同时存在注释和ejb-jar.xml描述符这一事实有关。其他所有内容都是用注释处理的,而ejb-jar.xml只是介绍了ejb-client-jar

<?xml version="1.0" encoding="UTF-8"?>
<ejb-jar xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://java.sun.com/xml/ns/javaee" xmlns:ejb="http://java.sun.com/xml/ns/javaee/ejb-jar_3_0.xsd" xsi:schemaLocation="http://java.sun.com/xml/ns/javaee http://java.sun.com/xml/ns/javaee/ejb-jar_3_0.xsd" version="3.0">
  <display-name>EJB</display-name>
  <ejb-client-jar>EJBClient.jar</ejb-client-jar>
</ejb-jar>

此外,weblogic-ejb-jar.xml用于其他配置。

但是,在这种情况下,预构建的EAR和源部署的行为有何不同以及如何解决问题?应用程序正在使用Java EE 5和EJB 3.0。

答案

我刚才有类似的问题。我通过添加创建“ejb-jar.xml”文件来解决它,并将其放在project-> src-> resources-> META-INF下。

这是内容:

http://java.sun.com/xml/ns/j2ee/ejb-jar_3_0.xsd"`enter code here version =“3.0”>

<enterprise-beans>
    <session>
        <ejb-name>className </ejb-name>
        <ejb-class>packageName.className</ejb-class>
        <session-type>Stateless</session-type>`enter code here`


    </session>
</enterprise-beans>

enter code here

以上是关于Weblogic:在ejb-jar文件中找不到EJB的主要内容,如果未能解决你的问题,请参考以下文章

EJB2.0 ejb-jar.xml配置文件详解

EJB2.0 ejb-jar.xml配置文件详解

weblogic在阶段找不到.ear,但它在文件系统上

java项目部署weblogic后获取不到项目文件路径

weblogic \WEB-INF\proxool.xml系统找不到路径

weblogic中间件部署的项目,当访问路径找不到资源时,如何让页面不显示资源路径