Я использую JSF 2.0 с Primefaces 3.4.2<р: selectOneMenu метод слушатель возвращает нуль при выборе значения
У меня есть следующие в JSF странице
<p:selectOneMenu value="#{mb.employee}">
<f:selectItems value="#{mb.employeeList}" var="emp"
itemLabel="#{emp.employeeName}" itemValue="#{emp.employeeCode}"/>
<p:ajax listener="#{mb.changeMethod}" />
</p:selectOneMenu>
Проблема заключается в том, когда я выбираю значение в selectOneMenu, я получаю null в changeMethod of ManagedBean, для этого System.out.println("val "+employee.getEmployeeName());
В чем причина этого? Как я могу решить эту проблему? Любая гепа очень заметна.
ManagedBean Код
@Named("mb")
@ViewAccessScoped
public class MyBean implements Serializable {
private Employee employee;
private List<Employee> employeeList;
@Inject
EmployeeService employeeService;
@PostConstruct
public void loadEmployees() {
employeeList = employeeService.getEmployees();
}
public void changeMethod() {
System.out.println("val "+employee.getEmployeeName());
}
/* getters and setters for employee and employeeList */
.... methods
/* */
Я добавил '
user75ponic
@Polppan Должен быть нулевой указатель, возникающий в ваших установщиках свойств или методах getter. Это также может происходить в 'конверторе' для вашего компонента' selectOneMenu'. Вы конвертируете объекты 'employee', не так ли? –
Это потому, что у меня нет класса конвертеров? Да employeeList и сотрудник - это класс сотрудников. – user75ponic