Как передать параметры в выражение метода - JSF 2.0

Как передать параметры в метод выражения - JSF 2.0

Начиная с JSF 2.0, вы можете передавать значения параметров в выражении метода, например «#\{bean.method(param)}», но эта функция будет повышать «EL parsing error» на сервере Tomcat. Например,

Управляемый Боб

@ManagedBean(name="order")
@SessionScoped
public class OrderBean implements Serializable{

    public String editAction(String id) {
        //...
    }
}

Страница JSF

//...

//...

При развертывании на Tomcat будут отображаться следующие сообщения об ошибках:

An Error Occurred:
Error Parsing: #{order.editAction(123)}

or

javax.el.MethodNotFoundException

Решение

Фактически, этот так называемый «method expression parameters» является особенностьюEL 2.2, то естьNOT support in Tomcat by default.

Чтобы использовать эту функцию, вы должны получить «el-impl-2.2.jar» изJava.net и поместить его в папку зависимостей вашего проекта.

Файл: pom.xml

     
      org.glassfish.web
      el-impl
      2.2
     

Готово, Tomcat должен поддерживатьmethod expression parameters в веб-приложении JSF 2.0.