当前位置: 首页 > 知识库问答 >
问题:

我可以将所有EJB部署描述符放置在EAR文件的META-INF目录中,而不是EJB jar文件中吗

归浩博
2023-03-14

我有一个作为EAR文件交付的企业应用程序。耳中的META-INF文件夹包含预期的“application.xml”,以及属于应用程序的模块列表。

ear中还有许多EJB jar文件,每个文件都包含许多EJB。出于某些原因,我们希望使用XML部署描述符来配置所有EJB。因此,我们有许多ejb jar文件,每个文件都嵌入在ear文件中每个jar的META-INF文件夹中,如下所示。

EAR_FILE
:     
:-----META-INF
:           :
:           -application.xml
:     
:     
:------EJB_JAR_1
:              :
:              -META-INF
:                      :
:                      -ejb-jar.xml
:------EJB_JAR_2
:              :
:              -META-INF
:                      :
:                      -ejb-jar.xml
:------EJB_JAR_3
              :
              -META-INF
                      :
                      -ejb-jar.xml


如您所见,这会产生许多单独的ejb-jar.xml部署描述符。我们希望能够将其集中到定义应用程序中所有ejb的单个部署描述符中。

此外,我们希望在ear中保留单独的ejb jar文件,而不是将它们全部放在一个ear中。

在包含应用程序中所有ejb的配置的ear文件的META-INF文件夹中是否可能有一个“主”ejb jar文件?

或者甚至可以将ejb-jar文件放在包含EJB的实际jar之外吗?

归根结底,我真正想要实现的是将所有ejb部署描述符集中到某个地方的一个文件中,而不是像上面那样将它们分散到每个单独的EJB jar上?

非常感谢,

戴夫。

共有1个答案

许俊雅
2023-03-14

或者甚至可以将ejb-jar文件放在包含EJB的实际jar之外吗?

是的,但更准确地说:在EJB模块JAR之外有EJB类是可能的。换句话说,您可以使用单个EJB jar创建单个EJB模块。xml,然后将所有EJB\u JAR\u 1、EJB\u JAR\u 2等放在EAR/lib/目录中,这会自动使所有JAR对EAR中的所有EJB模块可见(或者,在您的示例中是单个EJB模块)。或者,您可以手动维护类路径:ejb-1。jar ejb-2。EJB模块META-INF/MANIFEST中的jar列表。MF,但这需要更多的工作。

 类似资料:
  • 我想将文件从我的>移到>文件夹。我尝试使用插件,但它只是将文件从复制到文件夹中的。但是在构建的中,文件在中不可用 我如何将我的启动文件移动到META-INF到ear>META-INF? 这是EAR的pom文件。 下面是project workspace屏幕抓取

  • 我正在尝试使用GraalVM原生映像来编译一个Spring Boot项目来构建一个. exe文件。 我的pom。xml: 当我使用mvn软件包时,出现了错误: 我试着改变maven的配置,试着使用不同的镜像下载插件,试着使用不同版本的插件。无论我如何操作,它都会不断报告错误。 我的环境: os: windows10 jdk:graalvm-ce-java11-windows-amd64-21.2.

  • 我正在为SAP hana云平台开发一个需要UnlimitedJCEPolicyJDK8的实现。文档告诉我需要将其置于以下结构下: WAR文件:meta-inf-ext_security-jre8 问题是,当我包含JAR时,它会转到WEB-INF/类,而服务器并不在这方面。如图所示。 尝试了以下操作: 使用eclipse web部署程序集添加文件(无论出于什么原因,它似乎不能与maven一起工作,是

  • 我想从两个不同的部署中加载和处理json模式文件,第一个是具有JAX-RSendpoint的WAR,第二个是具有Singleton EJB的EAR,一个包含模式文件的资源JAR(我已经了解到,只有将资源文件绑定到EAR内的单独JAR中,才能打包用于EJB的资源文件)。 开发环境是eclipse 2019-03与JBoss Wildfly 16。 WAR部分很好,我有一个< code > @ App

  • 经过几天的搜索、尝试和尝试,我把这个问题发到了SO上,尽管它似乎已经得到了答案。 这是一个场景:我有一个EAR应用程序,包含(目前)一个WAR和一个EJB模块。EJB模块使用JPA(persistence.xml)并通过Web服务公开一些无状态会话bean。web服务使用jdbc领域的基本身份验证。web模块使用相同领域的表单身份验证。 null 在我的研究过程中,我管理了以下几个方面: 我可以使

  • 我需要在weblogic server 10.3.6上部署非常旧的应用程序(10年-生病)。我有一个ear文件,其中包含几个带有EJB类的子部署jar(它们包含weblogic-EJB-jar.xml和EJB-jar.xml)。它通常部署在服务器上,我可以在weblogic中使用“查找”功能。 问题是,还有另一个没有ejb-jar.xml的jar(更旧)需要运行这个应用程序。例如,它有Object