jakarta.el.PropertyNotWritableException: Illegal Syntax for Set Operation for the PrimeFaces <p:selectOneMenu /> component

48 views Asked by At

Currently we are migrating the Jakarta Faces application from WildFly to Spring Boot v.3.1.1 using JoinFaces v.5.1.1. The version of PrimeFaces is 12.0.0. The implementation of Jakarta Faces is Mojarra v.4.0.2. I've figured out that the following ternary operator for the "value" attribute of <p:selectOneMenu /> component causes jakarta.el.PropertyNotWritableException: Illegal Syntax for Set Operation exception: <p:selectOneMenu id="someId" value="#{checkBoxBean.checked ? anotherBean.filters.value : ''}" />. The problem isn't reproducible on WildFly-based application. Moreover the problem isn't reproducible if I use the construction like <p:selectOneMenu id="someId" value="#{anotherBean.filters.value" /> or <p:selectOneMenu id="someId" value="''" /> in Spring Boot. There is used EL resolver "org.primefaces.application.exceptionhandler.PrimeExceptionHandlerELResolver". However the usage of EL resolver "org.springframework.web.jsf.el.SpringBeanFacesELResolver" does not fix the problem. Is there any way to make EL ternary operator work in JoinFaces/Spring Boot environment?

0

There are 0 answers