Мы переносим приложение из weblogic в jboss,
В этом приложении Spring Myfaces, в jboss, при загрузке управляемого bean-компонента страницы xhtml, определенного весной, и конфигурации лица xmls не создают компоненты, что приводит к нулевому указателюисключение, когда приложение пытается загрузить страницу xhtml.
В весеннем конфиге applicationcontext xml имеется следующая запись для сканирования пакетов
<context:component-scan base-package="com.thehartford.pi.sales.web.controller.auto.*" >
<context:include-filter type="annotation" expression="com.thehartford.pi.sales.web.common.annotations.Controller"/>
</context:component-scan>
<context:component-scan base-package="com.thehartford.pi.sales.web.controller.home.*" >
<context:include-filter type="annotation" expression="com.thehartford.pi.sales.web.common.annotations.Controller"/>
</context:component-scan>
com.thehartford.pi.sales.web.common.annotations.Controller => Этот контроллер имеет следующие аннотации
@Component
@Scope("request")
@Target({ ElementType.TYPE })
@Retention(RetentionPolicy.RUNTIME)
public @interface Controller {
public static final String EMPTY_STRING = "";
String value() default EMPTY_STRING;
}
В Weblogic это включение помогает создавать компоненты, необходимые для конфигурации myfaces xml, доступной в следующих пакетах
<context:include-filter type="annotation" expression="com.thehartford.pi.sales.web.common.annotations.Controller"/>
, тогда как вjboss эти аннотации не попадают в контроллер, доступный в этих пакетах, что вызывает исключение нулевого указателя.Это решается явным включением этих аннотаций во все классы, определенные в этих пакетах.
Пожалуйста, помогите мне понять, почему следующий фильтр не работает в jboss
<context:include-filter type="annotation" expression="com.thehartford.pi.sales.web.common.annotations.Controller"/>