gpt4 book ai didi

java - 多个具有相同名称的 EJB bean

转载 作者:行者123 更新时间:2023-11-30 07:59:40 25 4
gpt4 key购买 nike

我们有两个 EJB bean,它们具有相同的名称(例如 MyBean),但位于不同的包(不同的子模块)中,例如 com.example.module1 和 com.example.module2,并且它们实现完全不同的接口(interface)。Apache TomEE+ 1.7.2 在每次部署时仅随机识别其中一个,并完全忽略另一个,甚至没有警告!

尝试将conf/system.properties中的openejb.deploymentId.format属性更改为以下两个,但这没有帮助。

openejb.deploymentId.format = {appId}/{ejbJarId}/{ejbName}

openejb.deploymentId.format = {appId}/{ejbJarId}/{ejbClass}

有人知道如何解决这个问题吗?非常感谢

最佳答案

您是否尝试过为每个设置一个名称?

@Stateless(name="MyBean1")
public class MyBean implements MyBeanLocal

或注释

@Documented
@Qualifier
@Retention(RetentionPolicy.RUNTIME)
@Target({ElementType.METHOD, ElementType.FIELD, ElementType.PARAMETER, ElementType.TYPE})
public @interface TypeOne {

}

@Documented
@Qualifier
@Retention(RetentionPolicy.RUNTIME)
@Target({ElementType.METHOD, ElementType.FIELD, ElementType.PARAMETER, ElementType.TYPE})
public @interface TypeTwo {

}


@TypeOne
@Stateless
public class MyBean implements MyBeanLocal

@TypeTwo
@Stateless
public class MyBean implements MyBeanLocal

关于java - 多个具有相同名称的 EJB bean,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32129826/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com