шовный припой (прежний проект расширения сварных швов) не инициализирован - PullRequest
0 голосов
/ 13 января 2011

Я хочу использовать logger в своем веб-приложении на Java.

Я использую JBossAS 6.0.0.final, cdi (weld), jsf ... и т. Д. Припой шва предлагает использовать абстрактный логгер, а не привязываться к конкретной реализации (slf4j, log4j и т. Д.) С использованием jboss- регистрация 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.

Если вручную добавить файл beans.xml в seam-solder.jar, то приложение работает ХОРОШО.

Как обойтись без хаков?

Для создания своего приложения я использую maven, поэтому мое решение неудобно и НЕ подойдет.

PS: Бывший проект расширений сварных швов содержал файл META-INF / beans.xml в jar.

1 Ответ

1 голос
/ 13 января 2011

при использовании seam-solder-3.0.0.Beta1 не нужно изменять банку

...