jueves, 11 de marzo de 2010

Implementación de Plantillas en ADF Faces

En este tema se aprenderemos como generar una plantilla para ADF, los componentes que tienen y para que sirven, así como su implementación a las paginas.



Primero que nada debemos iniciar nuestro JDeveloper.





Una vez abierto nuestro JDeveloper nos dirigimos al navegador de aplicaciones y creamos una nueva aplicación, seleccionamos "Fusion Web Application (ADF)" y damos click en finalizar.





Al finalizar el proyecto que nos creara se debe ver como este, con una sección de diseño que es viewController y otra donde se contendrán nuestros códigos que es Model, para este ejemplo de la plantilla solo usaremos el viewController, damos un click derecho sobre el y click en nuevo.





Cuando dimos el click en nuevo nos parece una pantalla como esta que nos muestra todos los posibles ítems que podemos agregar, dentro de "Web Tier" seleccionamos "JSF" y al lado derecho seleccionamos el ítem "JSF Page template" y damos click en Ok para continuar.





En esta pantalla definiremos nuestra plantilla que lleva una extensión .jspx que nos indica únicamente que será compatible con código XML, primero le damos un nombre al archivo, una ubicación y un nombre a la plantilla, después hay que crear los Facet y los Attributes.

Facet:
Son las Áreas dinámicas de la plantilla que se dejaran para el contenido de las jsp.


Attributes:
Son los Parámetros recibidos por la plantilla.






Dependiendo de la cantidad de Facet y Attributes que le hayamos colocado a nuestra plantilla debemos tener una estructura de árbol similar a esta imagen:





Ahora vamos al diseño, ayudados por los componentes layout de ADF demos el diseño que deseemos a nuestra plantilla, para este ejemplo agregamos un "Panel Strech Layout" este ayuda a administrar el espacio en la plantilla de la siguiente manera:





En cualquier área que deseemos de nuestra plantilla podemos arrastrar un "Facet Ref" ubicados en los componentes "Common Components" de ADF Faces lo que nos arrojara una pequeña alerta como esta la cual dependiendo de los facet que tenga nuestra plantilla nos mostrara una lista de ellos para escoger que deseamos este contenido en esa sección.





Para hacer referencia a algún attributes que no son otra cosa que parámetros para la plantilla agregamos cualquier control común con la propiedad valué, y como valué le ponemos en expression language #{attrs.nombre_atributo} ya con nuestra plantilla personalizada, este es un ligero ejemplo de su interface.





Ahora ya tenemos la plantilla terminada, implementémosla a un jsp (JSF Page), siguiendo básicamente los mismos paso que para crear la plantilla solo seleccionando un ítem diferente.viewControlle > Click derecho > New > Web Tier > JSF > JSF Page > Ok





Después del Ok, nos mostrara una pequeña ventana como esta, donde le asignaremos un nombre y una ubicación a nuestra jsp, también marcaremos Create as XML Document, lo que nos generara un archivo con la extensión .jspx igual que el de la plantilla y para terminar en la lista de Use Page Template seleccionaremos el nombre de nuestra plantilla creada.





Cuando se crea nuestra .jspx nos muestra la plantilla que acabamos de crear con las partes que le dejamos como Facet editables que servirá para que le coloquemos el contenido que deseemos.





Para terminar damos click derecho sobre nuestra jspx y seleccionamos Run, para que se compile y ejecute nuestro proyecto, así es como se visualizaría nuestra sencilla plantilla. en ejecución con su contenido.



Instalación de JDeveloper 11g en Linux



En esta publicación aprenderemos como instalar JDeveloper 11g en linux, específicamente lo haremos en la distro Ubuntu 9.10 por ser de las mas populares, abarcaremos como ejecutar el archivo de instalación disponible en la pagina de Oracle, los directorios que nos generara y como crear un lanzador para su fácil acceso no necesidad de entrar a la consola siempre para iniciarlo.



Lo Primero que debemos hacer es descargar el Archivo de instalación disponible gratuitamente en la pagina de Oracle technology, lo único que debes hacer es registrarte y descargar el archivo en este enlace:

http://www.oracle.com/technology/software/products/jdev/htdocs/soft11.html





Una vez que ya descargamos el archivo a nuestra maquina tenemos que ubicar el directorio donde fue descargado y moverlo o renombrarlo de forma que acceder a el desde la consola se nos haga lo mas fácil posible, Para este ejemplo la ubicación y nombre son:

Sistema de archivos de 163GB/otro/aplicaciones/jdevstudio.bin






Ahora nos dirigimos hacia la consola para iniciar con la instalación, para llegar a ella abrimos el menú "Aplicaciones>Accesorios>Terminal" cuando este abierta debemos loguearnos como el súper usuario del equipo con el comando "sudo su" el cual nos solicitara la contraseña.





Una vez estando como súper usuario debemos llegar hasta nuestro archivo para poder instalarlo, algunos de los comandos que nos serán muy útiles para esto son:

cd.. <este comando nos saca del directorio donde estamos hacia el que lo contiene>

cd/ <este comando nos envía directamente al directorio raíz de nuestro sistema>

cd directorio <este comando nos manda hacia el nombre o ruta de directorio que pongamos después del comando cd>

ls <este comando nos envía una lista de los directorios o archivos contenidos en el directorio donde nos encontremos en el momento de ejecutarlo>

Para este ejemplo la ruta completa fue /media/16D8D04AD8D02A2F/otros/aplicaciones y en el con el comando ls se puede confirmar que el archivo jdevstudio.bin se encuentra dentro.
Estando en la carpeta que contiene nuestro instalador ejecutaremos el siguiente comando para darle permisos de ejecución al archivo instalador:

chmod +x jdevstudio.bin
y para ejecutarlo una vez que ya tiene permisos usamos esto:

./ jdevstudio.bin






Una vez que el instalador ha terminado de extraer los archivos para la instalación nos arrojara una clásica ventana de instalación grafica ya mucho mas amigable aunque aun no hemos terminado, damos click en next para avanzar a la siguiente pantalla.





Esta parte es importante por que es el momento en que se seleccionara el lugar de instalación, con el fin de hacer nuestro lanzador debemos aprendernos la ruta de directorios donde se instalara, también es importante que se considere que como en este ejemplo aparece por default el directorio en root, root es un directorio protegido lo cual quiere decir que solo el súper usuario podrá acceder al programa.





Bien ya terminada la instalación podemos cerrar la consola, ahora creemos el lanzador dando click derecho sobre el menú aplicaciones y seleccionando la opción de modificar, nos mostrara una pantalla como la de la imagen, seleccionemos en la lista de menús programación y checamos mostrar.





Situados en el menú de programación damos click en Elemento nuevo que nos arrojara una pantalla como la de la imagen, dando click en cuadro con la imagen de un lanzador especificamos el icono que deseemos usar, en tipo debe tener Aplicación, en nombre el que nosotros deseemos que lleve y en comando debe tener esta sintaxis:

Ruta_del_directorio_de_instalación/Oracle/Middleware/jdeveloper/jdev/bin/jdev

Como en este caso la ruta fue solo root dentro de la raíz quedaría de la siguiente forma:

/root/Oracle/Middleware/jdeveloper/jdev/bin/jdev

Pero como ya se había comentado root es un directorio protegido no nos permitiría usarlo, para solucionarlo debemos agregar al inicio de la ruta en comando gksudo -u root quedando al final así:

gksudo -u root /root/Oracle/Middleware/jdeveloper/jdev/bin/jdev

de este modo cada vez que ejecutemos el lanzador nos pedirá la contraseña de súper usuario, aun que se podría evitar eligiendo un directorio de instalación no protegido.






Para terminar con nuestro proceso del lanzador checamos mostrar de nuestro nuevo lanzador y estamos listos para ejecutarlo.





Probamos el lanzador en "Aplicaciones>Programación>Nombre_Lanzador" en caso de estar en directorio protegido pedirá la contraseña, cuando nos muestre esta pantalla seleccionamos el Rol que deseemos y damos click en Ok y empezamos a trabajar.






Para finalizar, esta es la imagen del JDeveloper trabajando en nuestro linux.