首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何强制openEJB忽略mappedName而改用openejb.jndiname.format

如何强制openEJB忽略mappedName而改用openejb.jndiname.format
EN

Stack Overflow用户
提问于 2011-08-08 11:13:47
回答 2查看 698关注 0票数 1

我有一个EJB:

代码语言:javascript
复制
@Stateless(mappedName = "MetadataFacade")
public class MetadataFacade implements MetadataFacadeRemote {

和使用以下配置的openEJB:

代码语言:javascript
复制
-Dopenejb.jndiname.format={ejbClass.simpleName}#{interfaceClass}

当嵌入式openEJB启动时,它会忽略openejb.jndiname.format选项并创建错误的JNDI名称:

代码语言:javascript
复制
INFO   info, Jndi(name=MetadataFacade) --> Ejb(deployment-id=MetadataFacade)

如何将其配置为使用openejb.jndiname.format选项并创建类似如下的JNDI名称:

代码语言:javascript
复制
MetadataFacade#my.package.MetadataFacadeRemote

如果openEJB不能做到这一点,我将感谢任何变通方法。

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2011-08-26 06:17:27

由于所描述的用例不受支持,我创建了一个补丁

mappedName.patch

它禁用了原来的行为,而是添加了一个可以在openejb.jndiname.format.中使用的新变量ejbClass.mappedName

此补丁适用于以下项目的负责人(修订版1034599):

代码语言:javascript
复制
 http://svn.apache.org/repos/asf/openejb/tags/openejb-3.1.4

使用以下命令将其应用到源根目录:

代码语言:javascript
复制
patch -p0 -i mappedName.patch

然后使用以下命令构建openEJB:

代码语言:javascript
复制
mvn -Dmaven.{test,itest}.skip -Dassemble clean install

并添加

container/openejb-core/target/openejb-core-3.1.4.jar

添加到类路径中作为第一个条目。

票数 0
EN

Stack Overflow用户

发布于 2011-08-09 03:34:01

现在还没有这个功能,但是我们可以添加一个标志来配置它。您使用的是什么版本?

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/6977420

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档