问题标签 [ejb-jar.xml]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
0 回答
481 浏览

datasource - EJB - 动态数据源绑定

我们正在尝试在我们的应用程序中实现 Model-2 SaaS。

(有关什么是 Model-2,请参阅IBM Link。)

Model-2 为每个客户使用一个 EAR(应用程序)具有单独的数据库模式。

架构和数据源将根据登录客户(租户)动态变化

但是在我们的应用程序中。我们有 EJB(主要是无状态会话 bean)。

数据源名称映射到ejb-jar.xml每个会话 bean,如下所示。

但是这种方式不可能实现SaaS的Model-2。有没有办法为 EJB 动态绑定数据源或任何解决方案,请建议?对于客户 1,它应该是jdbc/DB1,对于客户 2,它应该是jdbc/DB2...etc.

我已经搜索过类似的问题,但我想要一个在 EJB 中的解决方案,而不是改变技术,请提出建议。

提前致谢

更改数据源 动态数据源路由

0 投票
1 回答
90 浏览

ejb-3.0 - 访问EJB 类中 ejb-jar.xml 的配置

我在 ejb-jar.xml 中部署了一个 EJB,我想访问

在 ejbCreate() 期间我的 EJB 类中的配置,即 Bean 或 Container,因为我必须将此值传递给我的框架以进行内部工作。

注意:我不想重复并为其已经存在的相同定义一个额外的 env-entry,我想使用它

0 投票
1 回答
1307 浏览

java - ActivationConfigProperty userName 将被忽略,因为资源适配器不允许:hornetq-ra

这是我的ejb-jar.xml

我不明白为什么会收到此警告:

我也尝试过userNameUserName但我总是得到同样的警告。

我应该配置任何 ra.xml 文件吗?

谢谢你们的帮助。

备注:我使用 JBoss AS 7.2

0 投票
1 回答
1169 浏览

jboss - 如何在 ejb-jar.xml 中为 JBoss 指定 MDB 目标名称

我正在尝试在 ejb-jar.xml 中配置 EJB 2.1 MDB。我的问题是没有明确的方法来指定 MDB 假设要收听的目标(队列名称)。我已经用尽了网络,但没有找到任何有用的信息。

所以在我的 ejb-jar.xml 中,我已经像这样配置了我的 DMB:

如何指定 MDB 应该监听的队列名称或 jndi 名称?

0 投票
1 回答
968 浏览

java - 消息驱动 Bean 和部署描述符

我有简单的消息驱动 Bean

如何仅使用部署描述符 ejb-jar.xml 而不是注释来实现相同的效果?我在编译时不知道队列的 JNDI 名称,所以我想在部署描述符中指定它。

0 投票
2 回答
1788 浏览

events - 触发事件时,CDI 观察者尚未初始化

我有两个 SLSB:

  • BeanF,
  • BeanO

在两个 ejb-jar 中:

  • ModF,
  • ModO.

BeanF触发一个事件并BeanO观察它。

第一个fire(-)操作以异常结束(Wildfly 8.2):

错误 [org.jboss.as.ejb3.invocation] JBAS014134:组件 BeanF 上的 EJB 调用失败,用于方法 public void BeanF.publish(ModEvent):
javax.ejb.EJBException:org.jboss.msc.service.ServiceNotFoundException:服务服务
jboss .deployment.subunit."myapp.ear"."modO.jar".component.BeanO.VIEW."BeanO".LOCAL 未找到

进一步fire(-)的操作到达观察者,但我不能让任何事件丢失。

有没有办法在事件被触发之前强制初始化观察者(或者在事件被触发并等待处理之后)?

@Observes(notifyObserver = Reception.IF_EXISTS)唯一允许在观察者尚未准备好时静默跳过事件。
在我的情况下,BeanF不能依赖,BeanO因为ModO必须ModFapplication.xml.

是否可以使用 CDI 事件/侦听器,或者我需要使用 JMS?

0 投票
1 回答
509 浏览

jakarta-ee - 消息驱动 bean 错误 - java.lang.Object 不是接口

当我尝试创建另一个消息驱动 Bean 时,我遇到了一个奇怪的异常。我使用了项目中已有的标准配置,但我无法启动 EAR。我得到的例外 - java.lang.Object is not an interface,并没有真正的帮助。

MDB 实现片段

EJB 描述符

最好的部分是,已经存在的 Bean 的完全相同的实现没有造成任何麻烦。

0 投票
1 回答
2879 浏览

java - CHKJ2800E:无法反映接口 com.sbc.ept.imagine.service.adsl.ejb.AdslLocal 或其超类型之一。检查类路径

目前我正在为 JAVA 应用程序工作。我刚刚在 RAD_9.1.1 中从 SVN 签出项目。当我将相关的 jars 添加到我的项目中时,我遇到了下面的类路径错误。

有没有人有这个问题的解决方案?

已抛出近 300 多个错误,我无法解决问题。

CHKJ2800E:无法反映接口 com.sbc.ept.imagine.service.adsl.ejb.AdslLocal 或其超类型之一。检查类路径。ejb-jar.xml /ImagineService/ejbModule/META-INF

0 投票
2 回答
1404 浏览

jakarta-ee - 在 GlassFish 4.0 中部署期间修改 ejb-jar.xml 的配置属性

我有一个 ejb-jar.xml,其中包含我的一个 MDB 的配置信息。里面有一个配置:

当我的项目被构建和打包然后分发给用户时,我需要能够确保这个值可以被修改,因为用户有不同的服务器地址。

目前我可以选择在属性文件中设置地址。无论如何,我可以在 glassfish 4.0 上部署期间使用属性值修改此 xml 吗?

如果不是,我每次有人想要应用程序并重新构建它时都必须设置值吗?

我愿意将配置放在我只需要动态的地方,以便用户可以在属性文件中设置服务器地址。

0 投票
1 回答
1277 浏览

java - Websphere 85 ejb 3 部署问题

我正在尝试在 websphere 8 上部署一个 ejb 3 的 bean。bean 实现位于 src/main/java 中,而 ejb-jar.xml 位于 src/main/resources/META-INF 中。这被打包在一个 jar 中,并且该 jar 包含在 ear 中,它还有其他带有 ejb 2 的 ejb jar。所以 ear 包含 ejb 2 和 ejb 3 jar。在 websphere 中部署此耳朵期间,我收到以下错误:

org.eclipse.emf.common.util.WrappedException:org.xml.sax.SAXParseException:cvc-elt.1:找不到元素“ejb-jar”的声明。

如果我从 ejb 3 jar 中删除 ejb-jar.xml,则部署成功。如果我部署只包含 ejb 3 jar 的耳朵,它是成功的。如果我直接从 ibm 控制台部署 ejb 3 jar,它将成功部署。

但是尝试部署包含 ejb 2 和 ejb 3 jar 的 ear 失败了。以下是完整的堆栈跟踪:

ejb-jar.xml <ejb-jar xmlns="http://java.sun.com/xml/ns/j2ee" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://java.sun.com/xml/ns/javaee http://java.sun.com/xml/ns/javaee/ejb-jar_3_0.xsd" version="3.0"> <description><![CDATA[]]></description> <display-name></display-name> <enterprise-beans> <session id=""> <description><![CDATA[]]></description> <ejb-name></ejb-name> <env-entry> <env-entry-name></env-entry-name> <env-entry-type></env-entry-type> <env-entry-value><![CDATA[]]></env-entry-value> </env-entry>

我相信部署失败是因为 ear 同时拥有 ejb 2 和 ejb 2 jar。

对于如何解决这个问题,有任何的建议吗?