| Page Tree | ||
|---|---|---|
|
Ficheros messages.properties
A la hora de desarrollar nuestra aplicación, los textos que queremos mostrar a los usuarios por pantalla han de estar regulados para que, en caso de ser necesario, podamos modificarlos de manera rápida o internacionalizar dichos mensajes. Para conseguir esto tenemos que evitar escribir los textos directamente sobre los ficheros java o los xhtml puesto que esta manera de proceder es incorrecta.
...
| Bloque de código | ||
|---|---|---|
| ||
edit.header=Editar {0}
create.header=Crear {0}
manytoone.empty.table=No hay {0}s asociados a este {1}.
manytoone.change.table.action=Cambiar {0}
manytoone.select.table.action=Seleccionar {0} |
Mostrando los mensajes
Una vez que tenemos todos los ficheros de mensajes configurados, sólo queda ver cómo conseguimos que aparezcan en nuestra aplicación. Para ello bastará con hacer uso de los tags específicos si estamos en la parte de la vista (xhtml) o llamadas a FacesMessages si estamos en Java.
Ficheros xhtml/xml
Cabe destacar que los mensajes dispuestos en estos ficheros son de tipo estático, es decir cuando se renderiza la pantalla en cuestión se interpretan e incluyen en ese render de la página.
...
| Bloque de código | ||||
|---|---|---|---|---|
| ||||
<exception class="org.jboss.seam.framework.EntityNotFoundException">
<redirect view-id="/paginas/error.xhtml">
<message severity="warn">
#{messages['error.entidad.noEncontrada']}
</message>
</redirect>
</exception> |
Ficheros Java
Los mensajes lanzados desde Java, son de tipo dinámico, es decir durante el transcurso de la aplicación, un código nuestro lanza un mensaje que aparece al usuario en la forma que hayamos configurado en la parte de la vista (una barra superior, un pop-up, etc…)
...
| Bloque de código | ||||
|---|---|---|---|---|
| ||||
@In("#{messages['IDENTIFICADOR']}");
private String mensaje;
@Length(max=5, message="#{messages['too.long']")
@Pattern(regex="[0-9]+")
@NotNull
public String getZip() {
return zip;
} |
Personalización de ficheros de mensajes
En ocasiones, para aplicaciones grandes que tienen muchos mensajes, no es óptimo tener un único fichero de mensajes enorme con todos. La mejor opción de la que disponemos, en caso que queramos mejorar la eficiencia, es dividirlo en varios ficheros e indicar en el código donde se usan.
...