JSF - cambiar la acción para una h: commandButton (2,0)
Pregunta
Im nueva en JSF 2.0. En la última versión entiendo que si quiero cambiar las reglas sobre "lo que se enviarán al cliente" Sólo necesito para configurar el faces-config.xml.
Ahora, en la versión 2.0, ¿cómo se puede gestionar la acción? Por ejemplo, si tengo esto en un index.xhtml
<h:commandButton id="submit" value="submit" action="response" />
y tengo que llamar a una página llamada response.html (no XHTML) o que la página se coloca en /folder/response.html, o tantos otro sitio? ¿Cómo puede hacerlo? Sé JSF 2.0 es muy flexible en cuanto a estas cosas (el concepto de enlaces href es golpeado). Así que creo que puedo manejar esto con otras metodologías, ¿verdad?
Solución
El action
puede señalar dos cosas:
-
Una expresión
action="#{bean.methodname}"
método en el que el aspecto método como este:@ManagedBean @RequestScoped public class Bean { public String methodname() { // Do some business task here. return "response"; } }
Después de ejecutar el método de la acción terminará efectivamente que contiene el valor de retorno del método, así:
action="response"
.También puede controlar el resultado "dinámica" de la forma habitual de Java:
public String methodname() { if (someCondition) { return "somepage"; } else { return "anotherpage"; } }
Dependiendo del resultado condiciones, la acción va a terminar como
action="somepage"
oaction="anotherpage"
-
Otra página XHTML en el mismo carpeta que la página actual XHTML. Sólo tienes que especificar el nombre del archivo:.
action="response"
De cualquier manera, se irá a la página de XHTML que está compuesto por outcome + ".xhtml"
donde outcome
es el valor de la acción (por ejemplo response.xhtml
, somepage.xhtml
o anotherpage.xhtml
), que se supone que está en la misma carpeta que el archivo que contiene el XHTML h:commandButton
.
no es necesario configurar nada en faces-config.xml
para esto. Anteriormente, durante JSF 1.x edades que se necesita para definir <navigation-case>
para esto.
Ver también:
- No necesitamos ningún apestoso faces-config.xml - Blog por el plomo desarrollador Mojarra.