gpt4 book ai didi

Seam2.2 迁移到 2.3 产生 org.jboss.seam.core.init.jndiPattern 或使用 @JndiName 错误

转载 作者:行者123 更新时间:2023-12-01 12:46:26 24 4
gpt4 key购买 nike

我目前正在努力从 Seam 2.2 迁移到 2.3。

我正在按照这里的指南进行操作:http://docs.jboss.org/seam/latest/reference/en-US/html/migration23.html现在正在测试迁移的应用程序。

不幸的是,我被这个错误困住了:

Caused by: java.lang.IllegalArgumentException: You must specify org.jboss.seam.core.init.jndiPattern or use @JndiName:

在我的 components.xml 中,我尝试了 2 种方法:
  • 使用核心:初始化:
    <core:init debug="@debug@" jndi-pattern="@seam_jndiPattern@" />
    //where seam_jndiPattern=java:app/myApp-ejb.jar/#{ejbName}
  • 列出无状态 bean:
    <component class="org.service.admin.impl.AccountService"
    jndi-name="java:app/myApp-ejb/AccountService" />

    @Stateless
    @Name("accountService")
    @AutoCreate
    public class AccountService{
    }

  • 但两者都产生了:
    Caused by: java.lang.IllegalArgumentException: You must specify org.jboss.seam.core.init.jndiPattern or use @JndiName: accountService

    但是当我尝试添加 @JndiName 时对无状态 session bean 进行注释,错误已解决,但我不想在每个类上添加注释,因为我有数百个。任何可能的解决方法?

    最佳答案

    components.xmlcore:init

    <core:init debug="true" jndi-pattern="java:app/**your-ejb-name**/#{ejbName}" />

    或使用 @JndiPattern bean 中的注释。
    @JndiName("java/jboss:phoenix-ejb/**yourClassName**")

    在你的情况下,这将是
    @JndiName("java/jboss:phoenix-ejb/**AccountService**")

    关于Seam2.2 迁移到 2.3 产生 org.jboss.seam.core.init.jndiPattern 或使用 @JndiName 错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15386909/

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