Hasta aqui, la solución parece buena, pero por que crear un *.properties por cada idioma, cuando el portal ya tiene esto implementado, y en todo caso, el trabajo se vería reducido a modificar los mensajes según se requiriera y agregar los nuevos que fueramos a usar.
Sere breve de aqui en adelante, el portal hace uso de un *.jar que contiene todos los mensajes y textos que se usarán en el portal, tanto en botones como en labels. Este archivo lo podemos ubicar en la ruta /portal/IBM/WebSphere/PortalServer/ui/wp.ui/shared/app con el nombre de wp.ui.jar.
Una vez que abrimos el jar ubicamos la carpeta nls y dentro tendremos lo properties que tanto necesitabamos encontrar.
Para tener una idea de como usar estos properties, podemos darle un vistazo al siguiente tag ubicado en el archivo ErrorSessionTimeout.jsp del portal (archivo que muestra el mensaje de sesión caducada):
<portal-fmt:text key="error.timeout" bundle="nls.engine"><portal-fmt:textparam><portal-fmt:text key="link.home" bundle="nls.engine"></portal-fmt:text></portal-fmt:textparam></portal-fmt:text>
Aqui vemos 3 palabras clave, la que indica que archivo usara para ubicar el mensaje es: nls.engine, podran observar que entre todos lo properties que tenemos existe un conjunto de archivos con la siguiente terminologia: nls.engine_xx.properties, donde "xx" corresponden al idioma (es: español; en: ingles; fr: frances... y asi sucesivamente).
Adicionalmente vemos el key="error.timeout" que es el que indica que mensaje se obtendra del archivo de recursos que hemos ubicado según el idioma del browser, para este caso error.timeoput corresponde a: "La sesi\u00f3n del portal ha superado el tiempo de espera por falta de actividad. Inicie una nueva sesi\u00f3n en el portal {0}." Y aqui podemos apreciar que esperamos un parámetro: "{0}", este es recuperado del código mostrado
Con esto es fácil ya modificar un mensaje según nuestra necesidad o mejor aún, crear uno nuevo para nosotros. Siguiendo lo leído, para crear el mensaje: "Esto es todo amigos" solo necesitariamos hacer lo siguiente:
EN ESPAÑOL
- Ubicar el archivo nls.engine_es.properties
- Crear el key "msg.despedida" con el valor del mensaje: "msg.despedida = Esto es todo amigos.". Adicionalmente si quieren recuperar un parametro añadan "{0}".
- Ubicar el archivo nls.engine_en.properties
- Crear el key "msg.despedida" con el valor del mensaje: "msg.despedida = That's all folks.". Adicionalmente si quieren recuperar un parametro añadan "{0}".
- raíz_servidor_portal/shared/app/nls
<portal-fmt:text key="msg.despedida" bundle="nls.engine"/>
</portal-fmt:text>
</portal-fmt:text>
Y si quieren mandarle un parámetro:
<portal-fmt:text key="msg.despedida" bundle="nls.engine"><portal-fmt:textparam>[Mi parámetro]</portal-fmt:textparam></portal-fmt:text>
Espero que les sea de utilidad, proximamente algunos tips para generación de themes y skins personalizados.
Saludos.
No hay comentarios:
Publicar un comentario