Pregunta

Estoy usando una datos y para cada fila tengo dos botones, una "edición" y una "eliminar".

Necesito que estos botones sean de solo lectura, es decir, discapacitados, si se cumple una determinada condición para la fila en cuestión. He visto en JSF 2 que es posible pasar los parámetros a las llamadas de método. ¿Hay algo equivalente en JSF 1.2?

Idealmente, lo que me gustaría algo como (la variable de bucle es círculo Y hay otro frijol, ayudante, que contiene el método que me gustaría invocar):

<h:commandButton value="Edit"
                   disabled="#{helper.isEditable(loop.id)}" />

En este caso, no tiene sentido semántico agregar un iseditable Atribuir al frijol y no es práctico crear un objeto de envoltura alrededor del frijol.

Gracias por adelantado.

¿Fue útil?

Solución

He visto en JSF 2 que es posible pasar los parámetros a las llamadas de método. ¿Hay algo equivalente en JSF 1.2?

Pasar los parámetros a las llamadas del método es no Específico para JSF 2. Es específico de El 2.2, que a su vez es parte de JSP 2.2 / Servlet 3.0 / Java Ee 6. JSF 2 también es parte de Java EE 6. En otras palabras, si implementa su aplicación web JSF 1.2 en un contenedor compatible de servlet 3.0 como Tomcat 7, Glassfish 3, etc. y su web.xml se declara conforma la versión Servlet 3.0 Spec, entonces solo funcionará el cuadro para JSF 1.x también.

Sin embargo, si todavía está dirigido a un contenedor de una versión de servlet anterior, entonces debe proporcionar una implementación de EL diferente que admite invocar métodos con argumentos. Una de esas implementaciones es JBoss-El que puede instalar simplemente dejando caer el jboss-el.jar presentar en /WEB-INF/lib de su aplicación web y agregando el siguiente parámetro de contexto al web.xml. Aquí hay un ejemplo específico de mojarra (Mojarra es el nombre en código de JSF RI):

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

Si está utilizando myfaces como implementación JSF, necesita el siguiente parámetro de contexto: en su lugar:

<context-param>
    <param-name>org.apache.myfaces.EXPRESSION_FACTORY</param-name>
    <param-value>org.jboss.el.ExpressionFactoryImpl</param-value>   
</context-param>

Ver también:

Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top