Отключите внутреннюю проверку SelectOneMenu - PullRequest
2 голосов
/ 21 января 2011

У меня есть SelectOneMenu, управляемый списком, каждый из которых содержит значение объекта и строковую метку, а также конвертер.Все довольно стандартно.Сначала я получил ошибку Validation: значение недопустимо ошибка из-за опечатки в методе equals, но быстрый поиск того, как это исправить, поднимает другой вопрос:

Прав ли яв моем понимании, что в этом сценарии происходит следующее:

  1. В меню выбран элемент.
  2. Отправляет строковое значение на сервер.
  3. Преобразователь используется для преобразования строкового значения в объект.
  4. JSF проверяет, существует ли объект в списке элементов.
  5. Метод установки называется передачей объекта.

Если это так, то можно ли отключить шаг 4?Мой конвертер сгенерирует исключение ConverterException, если значение недопустимо, поэтому для меня этот второй обход списка совершенно не нужен.

Приветствия,

Барни

1 Ответ

0 голосов
/ 21 января 2011

Это по замыслу. Это одно из стандартных предупреждений атак на веб-сайт. Вы не можете выключить его.

Просто поместите bean-компонент в область видимости (чтобы он не повторялся при каждом запросе, в этом случае) или ищите менее защищенную инфраструктуру MVC, если это вас беспокоит.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...