30 nov 2011

Instalación PostGreSQL 8.4



Crear la parte de BD:
 1.-Tenemos que instalar postgresql 8.4 ,en mi caso el ejecutable es postgresql-8.4.9-1-windows.exe .Una vez instalado abrimos pqAdminII (Consola de administración).
2.-Vamos a registrar un nuevo servidor. Para ello ArchivoèAñadir servidor.
Poniendo los siguientes datos

 
Dar nombre y password(Cómo en MySql):root/root
3.-Ahora ya tenemos una conexión hecha. Vamos a añadir una nueva base de datos.
Si desplegamos el servidor creado PostgreSQL 8.4 veremos la opción “Nueva base de datos”.
Y le indicamos el propietario “DESA

 
4.-Ahora vamos a asignar un rol a la base de datos. Aquí es dónde pondremos contraseña
En este caso la contraseña, será:”temporal”.
(Lo mismo indicado en el archivo properties del proyecto
jdbc.driverClassName = org.postgresql.Driver
jdbc.url=jdbc:postgresql://localhost:5432/desarrollo
jdbc.username=DESA
jdbc.password=temporal
)

 
Instalar el cliente SQL, para controlar la BD:
5.- Cliente SQL universal: SQuirreL
SQuirreL es un cliente SQL gráfico y universal, que permite ver estructuras, datos y realizar consultas sobre cualquier base de datos compatible con JDBC.
Instalación
En un primer momento los plugins referentes a postgre y mysql aparecerán desactivados .Asi que habrá que añadir el jar postgresql-8.4-701.jdbc3.jar para postgresql en la carpeta lib del programa .En mi caso:
C:\Archivos de programa\squirrel-sql-3.3.0\lib


  • A la izquierda, clickear botón Aliases. Click en signo de + (azul), "Crear un nuevo alias" y completan los campos.
 Nombre: DESA POSTGRE 8.4
URL: jdbc:postgresql://localhost:5432/desarrollo User name: DESA,
Password: .desarrollo (Que coincida con el archivo de properties) 
  • Ejecutar  la aplicación. Clickear a la izquierda el botón Drivers. Luego, botón derecho PostgreSQL Server -> Modificar driver.  

  • En el campo Example URL, debe ir:
 jdbc=jdbc:postgresql://localhost:5432/desarrollo (La misma ruta que vamos a poner en el archivo de properties para la conexión en el proyecto).
La url la dejamos cómo está.

En el campo Class Name: org.postgresql.Driver  

  • Luego de completado el paso anterior, bajo la pestaña Objects, debería poder verse  la conexión  "DESA POSTGRE 8.4".

 
  • Doble click sobre DESA POSTGRE 8.4 y nos conectamos


 
Ahora vamos a ejecutar un script que va a generar tres tablas. Asociadas a los VO sobre los que aplicaremos las consultar de prueba del patrón DAOFactory.
Script de las tablas:
DROP table PROFILE;
                       DROP table PROFILE_ONTOLOGY;
                       DROP table ONTOLOGY;               
                       CREATE TABLE PROFILE (
                                                ID_PROFILE SERIAL NOT NULL PRIMARY KEY,
                                                NAME TEXT NOT NULL,
                                                DESCRIPCION TEXT NULL,
                                                USER_ID INTEGER NOT NULL
                       );
                      


CREATE TABLE PROFILE_ONTOLOGY (
                                                ID_PROFILE INTEGER NOT NULL,
                                                ID_ONTOLOGY INTEGER NOT NULL,
                                                PRIMARY KEY (ID_PROFILE, ID_ONTOLOGY)
                       );
                       CREATE TABLE ONTOLOGY (
                                                ID_ONTOLOGY INTEGER NOT NULL PRIMARY KEY,
                                                NAME TEXT NOT NULL
                       );
INSERT INTO PROFILE (NAME, DESCRIPCION, USER_ID) VALUES ('NOMBRE1', 'DESCRIPCION1', 1);
INSERT INTO PROFILE (NAME, DESCRIPCION, USER_ID) VALUES ('NOMBRE2', 'DESCRIPCION2', 2);
INSERT INTO PROFILE (NAME, DESCRIPCION, USER_ID) VALUES ('NOMBRE3', 'DESCRIPCION3', 3);

INSERT INTO ontology (ID_ONTOLOGY, NAME) VALUES ('1', 'ONTOLOGIA1');
INSERT INTO ontology (ID_ONTOLOGY, NAME) VALUES ('2', 'ONTOLOGIA2');
INSERT INTO ontology (ID_ONTOLOGY, NAME) VALUES ('3', 'ONTOLOGIA3'); 

INSERT INTO profile_ontology (ID_PROFILE, ID_ONTOLOGY) VALUES ('1', '1');
INSERT INTO profile_ontology (ID_PROFILE, ID_ONTOLOGY) VALUES ('1', '2');
INSERT INTO profile_ontology (ID_PROFILE, ID_ONTOLOGY) VALUES ('1', '3');
INSERT INTO profile_ontology (ID_PROFILE, ID_ONTOLOGY) VALUES ('2', '1');
INSERT INTO profile_ontology (ID_PROFILE, ID_ONTOLOGY) VALUES ('2', '2');

  • Ahora vamos a ejecutar las partes que nos interesan del script ir a la pestaña SQL
y clickear botón en consola superior que tiene al hombrecito corriendo(éste ejecutará únicamente las líneas seleccionadas).



 
Así, si incluimos instrucciones delete , podemos borrar los datos
DELETE FROM PROFILE
DELETE FROM ontology
DELETE FROM profile_ontology”
Despúes de ejecutar el script ,ya tenemos creadas las tablas,listar para usar.
  

 
  • Para ver las tablas en la entrada pestaña Objectsèpublic è>table, seleccionar la tabla a ver, ej: PROFILE, ontology o  profile_ontology .En la parte derecha de la ventana, seleccionar pestaña Content. 




  • En la pestaña SQL, podemos también escribir consultas, ej.: "select from ontology.



25 nov 2011

Falla la librería de taglib "c.tld" en un proyecto de portlets

El error que notifica el tomcat ,es:
javax.portlet.PortletException: org.apache.jasper.JasperException:
No pude cargar o instanciar clase TagLibraryValidator: org.apache.taglibs.standard.tlv.JstlCoreTLV


Se notifica también en la jsp un error en donde la taglib es importada.
Además en el eclipse el proyecto no  pone la "X" de error:
<%@ taglib uri="http://java.sun.com/jsp/jstl/core" prefix="c"%>


SOLUCION:::====
En el archivo de propiedades liferay-plugin-package.properties
portal-dependency-jars=\
    jstl-api.jar,\
    jstl-impl.jar,\
    liferay-rhino.jar

portal-dependency-tlds=\
    c.tld