Пользовательский рендер для компонента PrimeFaces отлично работает в Tomcat, но не в Websphere

Я использую MyFaces 2.1.9 и PrimeFaces 3.5. Я реализовал пользовательский рендер для <p:inputText>, Это прекрасно работает дома с Tomcat. Но это не работает на работе с Websphere. Я поместил точки останова в пользовательский класс рендерера, но они никогда не были достигнуты. Я тоже ничего не вижу в своих журналах. Тем не менее, когда я регистрирую тот же пользовательский рендерер на стандартном JSF <h:inputText>, то работает нормально.

Я зарегистрировал это следующим образом в faces-config.xml:

<render-kit>
    <renderer>
        <component-family>org.primefaces.component</component-family>
        <renderer-type>org.primefaces.component.InputTextRenderer</renderer-type>
        <renderer-class>xxx.xxx.xxx.MyInputRenderer</renderer-class>
    </renderer>
</render-kit>

Как я могу устранить неполадки при регистрации пользовательского рендерера?

1 ответ

Решение

Пользовательские средства визуализации, которые должны переопределять средства визуализации сторонних библиотек компонентов, должны быть зарегистрированы в собственном веб-приложении. faces-config.xmlне в faces-config.xml который упакован в другую банку в /WEB-INF/lib также. Порядок загрузки файлов JAR не указан, поэтому может случиться так, что пользовательский рендер будет загружен и зарегистрирован до библиотеки сторонних компонентов, которую вы хотите переопределить, точно так же, как вы столкнулись.

Другие вопросы по тегам