java - @ConnectionFactoryDe​​finition(在 WildFly 中)有什么问题,我应该改用什么?

标签 java jakarta-ee jboss wildfly jca

在我的开发设置中,我为 Wildfly 10 部署了资源适配器。到目前为止它似乎工作正常,但我收到如下警告:

14:57:44,007 WARN  [org.jboss.as.connector.deployment]
   (MSC service thread 1-2)
   WFLYJCA0028: @ConnectionFactoryDefinition will have limited management:
   java:comp/env/eis/TestRAConnectionFactory

搜索 WFLYJCA0028 我发现它是 used to be JBAS010427 之后搜索,找到了 this post来自 Jesper Pedersen 的 2014 年:

Because @ConnectionFactoryDefinition is a broken concept, and is only meant for development. All the settings for the JCA container isn't/can't be exposed, and hence it is limited in the management view too (use :resource-adapters: instead).

Do NOT use @ConnectionFactoryDefinition for production environments ! You have been warned

不幸的是,除了“这是一个破烂的概念”之外,它没有解释问题(或者我不明白),而且我找不到任何关于潜在问题以及如何正确创建 JCA 连接的更详细的解释代替工厂。

最佳答案

我什至犹豫了一会儿是否将其作为答案,因为我觉得好像答案应该以非常明确的细节明确地回答问题,但我无法给出。对于可能偶然发现不喜欢 ConnectionFactoryDe​​finition 注释的 JBoss 的任何其他人,我可以提供一些细微的见解。

看起来(至少在 JBoss 8 Wildfly 中,我亲身经历过)JBoss 实际上会阻止 ResourceAdapter 在使用 ConnectionFactoryDe​​finition 注释时启动.结果,rar 将“成功”部署,随后部署的类似注解驱动的 EJB(即 MessageDrivenActivationConfigProperty )依赖于入站 JCA,将在 EAR 部署期间开始失败,并提示 ear_name# rar_name 不可用。

与问题的最后一点相关

and how to properly create a JCA connection factory

我通过反复试验终于有了突破,用一个ra.xml和ironjacamar.xml定义了ConnectionFactoryDe​​finitionConnection注解中另外指定的信息和 ConnectionDefinition。将信息转录到相应区域的那些文件后,我能够让我的 ResourceAdapter 重新开始。

我希望我能提供更多信息,但我对为什么 JBoss 也会限制该注释感到困惑。我希望至少这会为其他人指明正确的方向,并且他们不会浪费与我弄清楚这是 JBoss 不喜欢的注释而不是您的代码一样多的时间。

关于java - @ConnectionFactoryDe​​finition(在 WildFly 中)有什么问题,我应该改用什么?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/40927589/

相关文章:

java - 未注入(inject) Arquillian 的显式本地 EJB

java - 格式化查询结果

java - GWT:语言环境没有改变?

java - 如何使用Android App的ListView生成游戏日志列表?

java - 在 JEE 5 中调用 WebMethod 时出现 javax.Naming.NameNotFoundException

tomcat - getServletContext.getContextPath() 和 request.getContextPath() 什么时候可以不同?

bash - 意外标记附近的语法错误 `echo'

tomcat - 哪个 AS 更适合 EJB-2 应用程序,客户端代码将驻留在 tomcat6 中

java - 如何使用 jsoup post 请求提交没有按钮名称的表单

java - 在 JBoss 7.1.1 下使用应用程序的 Log4J 配置