Пользовательский рендер для компонента 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 не указан, поэтому может случиться так, что пользовательский рендер будет загружен и зарегистрирован до библиотеки сторонних компонентов, которую вы хотите переопределить, точно так же, как вы столкнулись.