2011-01-13 9 views
0

Ich möchte Logger in meiner Java-Webanwendung verwenden.Naht Lötmittel (früher Weld-Erweiterungen Projekt) ist nicht initialisiert

Ich benutze JBossAS 6.0.0.final, cdi (weld), jsf ... usw. Nahtlot schlägt vor, einen abstrakten Logger zu verwenden, bindet nicht an eine konkrete Implementierung (slf4j, log4j, etc) mit jboss -logging api.

Um diesen Logger im Code zu bekommen

@ Inject 
org.jboss.logging.Logger log 

naht solder.jar hat der Hersteller für diesen Logger schreiben müssen.

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

} 

Wenn ich meine Anwendung bereitstellen, bekomme ich einen Fehler

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] 

Dies ist aufgrund der naht solder.jar hat nicht META-INF/beans.xml-Datei, und es ist notwendig, cdi-Behälter.

Wenn Sie manuell die Datei beans.xml in seam-lot.jar hinzufügen, funktioniert die Anwendung WELL.

Wie ohne Hacks zu tun?

Um meine Anwendung zu bauen, benutze ich Maven, so ist meine Lösung nicht bequem und nicht gut.

PS: Ehemaliges Weld-Erweiterungsprojekt enthielt die Datei META-INF/beans.xml in jar.

Antwort

1

mit Naht-Löt-3.0.0.Beta1 sollte es nicht notwendig sein, das Glas

zu ändern