Запретить преобразование нулевого параметра запроса в ноль в websphere jsf

#jsf #configuration #websphere #el #faces-config

#jsf #конфигурация #websphere #el #faces-config

Вопрос:

Мы используем #{param.customId} в faces-config для получения параметра из запроса. В glassfish2 это работает нормально, но в websphere 7.0 неопределенные значения BigDecimal null изменяются на ноль (0). Как настроить websphere, чтобы для этих значений он работал так же, как glassfish?

Комментарии:

1. похоже, что это проблема с пониманием. Я ищу универсальное решение, такое как пользовательский конвертер или изменение версии в jsf. Но у меня возникли проблемы с реализацией пользовательского преобразователя для значений #{param.xxx}.

Ответ №1:

возможно, это может помочь:

В tomcat7 значения пустых двойных полей изменяются на ноль на этапе обновления модели. После того, как я изменю реализацию tomcat «el» по умолчанию с помощью glassfish el impl, эти значения считываются как null

     <dependency>
        <groupId>org.glassfish.web</groupId>
        <artifactId>el-impl</artifactId>
        <version>2.2</version>
    </dependency>
  

и в web.xml:

 <context-param>
    <param-name>com.sun.faces.expressionFactory</param-name>
    <param-value>com.sun.el.ExpressionFactoryImpl</param-value>
</context-param>