JavaDabbaDoo.org -Tu comunidad Java parlante Implementar MVC - VW JSF
Inicio | Cursos infosintesis.net liberados | Java EE | Registrar a un usuario en un sitio Web con Visual Web JSF
Registrar a un usuario en un sitio Web con Visual Web JSF
Paso 2: Operativa

Vista - RegistroUsuario.jsp - Utilizar expresiones de valor (value expressions) para traducir las llaves del Resource Bundle

1. Utilizar expresiones de valor (value expressions) en la zona Design

Para que el componente Static Text que acabamos de arrastrar al lienzo muestre un literal lo podemo hacer de dos formas.

La primera forma consiste en escribir un valor de expresión (value expresssion) en la propiedad Text de la ventana Properties del componente Static Text. El valor de expresión es #{mensajes.literal_registroUsuario}

NetBeans 6 - Internacionalizar una aplicación Visual Web JSF - Properties | text | #{mensajes.literal_registroUsuario}

y seguidamente hacemos intro. Como podemos observar en el lienzo se muestra el literal Registro de usuario y en la propiedad Text aparece el icono Icono Binding seguido del valor de expresión que hemos utilizado

NetBeans 6 - Internacionalizar una aplicación Visual Web JSF - Design | Registro de usuario

Esta es la página JSP RegistroUsuario.jsp que ha ampliado el asistente de NetBeans

<?xml version="1.0" encoding="UTF-8"?>

<jsp:root version="2.1"
          xmlns:f="http://java.sun.com/jsf/core"
          xmlns:h="http://java.sun.com/jsf/html"
          xmlns:jsp="http://java.sun.com/JSP/Page"
          xmlns:webuijsf="http://www.sun.com/webui/webuijsf"
>
 <jsp:directive.page contentType="text/html;charset=UTF-8" pageEncoding="UTF-8"/>
 <f:view>
  
<f:loadBundle basename="paqregusuariovwjsf.Bundle" var="mensajes"/>
  <webuijsf:page id="page1">
   <webuijsf:html id="html1">
    <webuijsf:head id="head1" title="Registro Usuaro">
     <webuijsf:link id="link1" url="/resources/stylesheet.css"/>
    </webuijsf:head>
    <webuijsf:body id="body1" style="-rave-layout: grid">
     <webuijsf:form id="form1">
      <webuijsf:staticText id="stxRegistroUsuario"
                           style="left: 24px; top: 24px; position: absolute"                            
text="#{mensajes.literal_registroUsurario}"
      
/>
     </webuijsf:form>
    </webuijsf:body>
   </webuijsf:html>
  </webuijsf:page>
 </f:view>
</jsp:root>

Nota: Si la llave fuera literal.registroUsuario tendríamos un error porque el valor de expresión utiliza los puntos (.) para encontrar las llaves. Por tanto tendremos que utilizar los caracteres _ o - para crear llaves compuestas.

2. Arrastrar otro componente Static Text de la paleta de componentes al lienzo

Ahora arrastramos otro componente Static Text debajo del componente que hemos arrastrado anteriormente.

En la propiedad id de la ventana Properties del componente Static Text, escribimos stxCamposRequeridos.

3. Utilizar expresiones de valor (value expressions) en la zona JSP

En esta ocasión vamos a dejar que el IDE NetBeans nos ayude a crear la expresión de valor escribiendo en el atributo text del componente en la zona JSP. Para ir a esta zona hacemos clic sobre el botón JSP

Con la combinación de teclas Ctrl + espacio nos aparece un desplegable con todos los atributos posibles para este componente. Entonces seleccionamos el atributo text.

NetBeans 6 - Internacionalizar una aplicación Visual Web JSF - JSP | webuijsf:staticText | text

Este es el código que nos ha escrito el asistente de NetBeans


      <webuijsf:staticText text=""
                          
id="stxCamposRequeridos"
                           style="left: 24px; top: 24px; position: absolute"                            
      
/>

Dentro de las comillas del atributo text escribimos #{ y seguidamente la combinación de teclas Ctrl + espacio. Nos aparece otro desplegable. En esta ocasión seleccionamos mensajes.

NetBeans 6 - Internacionalizar una aplicación Visual Web JSF - JSP | webuijsf:staticText | text="#{"  | mensajes Bundle

Este es el código que nos ha escrito el asistente de NetBeans


      <webuijsf:staticText text="#{mensajes"
                          
id="stxCamposRequeridos"
                           style="left: 24px; top: 24px; position: absolute"                            
      
/>

Al teclear un punto (.) seguido de la palabra mensajes nos aparece otro desplegable. Entonces seleccionamos literal_camposRequeridos.

NetBeans 6 - Internacionalizar una aplicación Visual Web JSF - JSP | webuijsf:staticText | text="#{mensajes." | literal_camposRequeridos

Este es el código que nos ha escrito el asistente de NetBeans.


      <webuijsf:staticText text="#{mensajes.literal_camposRequeridos"
                          
id="stxCamposRequeridos"
                           style="left: 24px; top: 24px; position: absolute"                            
      
/>

Finalmente cerramos la expresión de valor con el carácter }. Este es el código definitivo para poder realizar una internacionalización de un texto de un componente con el Framework JSF.


      <webuijsf:staticText text="#{mensajes.literal_camposRequeridos}"
                          
id="stxCamposRequeridos"
                           style="left: 24px; top: 24px; position: absolute"                            
      
/>

Página anterior
Ignasi Pérez Valls
Infosintesis Solutions Group


Junio 2009
Fundamentos Spring
 
 
 
 
JavaDabbaDoo.org
Tu comunidad Java parlante. Cursos abiertos, tutoriales y mucho mucho más ...