【问题标题】:seam solder (former weld-extensions project) is not initialized焊缝(以前的焊接扩展项目)未初始化
【发布时间】:2011-06-08 12:59:57
【问题描述】:

我想在我的 java web 应用程序中使用记录器。

我正在使用 JBossAS 6.0.0.final、cdi (weld)、jsf ... 等。Seam Solder 建议使用抽象记录器与使用 jboss- 的具体实现(slf4j、log4j 等)无关日志记录 API。

为了在你的代码中获取这个记录器需要写

@ Inject 
org.jboss.logging.Logger log 

seam-solder.jar 有这个记录器的生产者。

package org.jboss.seam.solder.log; 
... 
class LoggerProducers 
{ 
   @ Produces 
   org.jboss.logging.Logger produceLog (InjectionPoint injectionPoint) {} 

} 

当我部署我的应用程序时,我收到一个错误

15:51:18,300 ERROR [org.jboss.kernel.plugins.dependency.AbstractKernelController] Error installing to Start: name=vfs:///C:/Java/jboss-6.0.0.Final/server/default/deploy/kamis-web-client.5.0.0-SNAPSHOT.ear_WeldBootstrapBean state=Create: org.jboss.weld.exceptions.DeploymentException: WELD-001408 Unsatisfied dependencies for type [Logger] with qualifiers [@Default] at injection point [[field] @Inject private ru.kamis.suite.webclient.web.breadcrumbs.BreadcrumbsManager.log]

这是由于seam-solder.jar 没有META-INF/beans.xml 文件,cdi 容器需要。

如果手动在 seam-solder.jar 中添加 beans.xml 文件,则应用程序运行良好。

没有黑客怎么办?

为了构建我的应用程序,我使用了 maven,所以我的解决方案不是很舒服,也不是很好。

PS:以前的weld-extensions 项目在jar 中包含META-INF/beans.xml 文件。

【问题讨论】:

    标签: seam cdi jboss-weld seam3


    【解决方案1】:

    使用 seam-solder-3.0.0.Beta1 应该不需要修改 jar

    【讨论】:

      猜你喜欢
      • 2014-09-02
      • 2019-07-22
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2011-10-23
      • 1970-01-01
      • 1970-01-01
      • 2012-07-10
      相关资源
      最近更新 更多