У меня есть веб-приложение (файл войны), которое зависит (Maven) от другого проекта (файл jar), который использует Spring для инъекции зависимостей. Поэтому в этом другом проекте у меня есть несколько XML-файлов, чтобы объявить мои бобы, в моем случае бизнес-объекты. Я начал использовать WildFly вместо Tomcat/Jetty, и, судя по всему, это называется Weld, ответственным за DI. Мое веб-приложение не использует Spring (пока), это просто простой API RESTful от Джерси.
Я хочу, чтобы мои бизнес-объекты были инъекционными (@Inject) в моих ресурсах (контроллерах).Впрыск весенней зависимости с WildFly
Как сделать мои бобы доступными, что означает, как мы смешиваем Spring DI и WildFly DI?
Сейчас в моем веб-приложение проекта У меня есть файл WEB-INF/beans.xml с этим:
<beans xmlns="http://xmlns.jcp.org/xml/ns/javaee"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xmlns:weld="http://jboss.org/schema/weld/beans"
xsi:schemaLocation="
http://xmlns.jcp.org/xml/ns/javaee http://xmlns.jcp.org/xml/ns/javaee/beans_1_1.xsd
http://jboss.org/schema/weld/beans http://jboss.org/schema/weld/beans_1_1.xsd
bean-discovery-mode="all">
</beans>
Но когда я пытаюсь развернуть, для этого кода:
@Inject SomeBO myBO;
Я получаю эту ошибку:
WELD-001408: Unsatisfied dependencies for type SomeBO with qualifiers @Default
Спасибо.
EDIT
мне нужно импортировать мои бобы с XML-файлов, я не хочу комментировать их, например, у меня есть bo.xml файл (Spring бобы), который содержит такое заявление:
<bean id="com.xxx.bo.SomeBO" parent="com.xxx.bo._AbstractBO">
<property name="target">
<bean class="com.xxx.bo.SomeBOImpl">
<property name="DAO" ref="com.xxx.dao.SomeDAO"/>
</bean>
</property>
</bean>
См. Мое редактирование, мне нужно использовать объявление xml, то есть мне нужно сделать WildFly/Weld информацией об этих файлах. –
Возможно, их придется аннотировать для использования CDI. Честно говоря, я не уверен, что происходит в файле beans.xml, поэтому, возможно, он настраивается там. –