• Permisos ampliables con la API: Permisos basados en la definición de papeles.
• Administraión de la interfaz: Permite a las cesiones de los permisos de funciones en cualquier momento por cualquier despliegue de portlet, Página, o portal de ejemplo.
Sistema de Gestión de Contenidos (CMS):• JCR conformes: El CMS se alimenta a través de Apache Jackrabbit, una aplicación de código abierto de Java
• PP o almacenar el apoyo del sistema de archivos: Configurable para almacenar el contenido del sistema de archivos o bien un RDBMS.
• Factores externos Blob Soporte: Contenido configurable que permite almacenar grandes nodos de referencias y propiedades al residir en una RDBMS.
• versionado de apoyo: Todo el contenido editado o creado es autoversionedo con una historia de ediciones que se pueden ver en cualquier momento.
• equipado con un editor HTML: HTML de modo WYSIWYG, la funcionalidad de vista preliminar, y HTML .
El listado anterior son las caracteristicas mas importantes de este Open-Source. ahora que ya tenemos una mejor noción de lo que es un portal de fuente abierta podremos continuar con el articulo. Por defecto jboss portal viene con una base de datos, la HSQL o Hipersonic, ahora generaremos la configuración para PostgreSQL, de esta manera se nos facilita un poco la administración de la base del portal, si es que tenemos webmin.
Entonces lo primero que haremos sera descargarnos jboos portal de la siguiente url, para este ejemplo practico, ocupo jboss portal 2.4 bundled, postgresql 8.2, linux debian y la jdk1.5.0_12:
1.- Descargamos jboss-portal-2.4.1-bundled.zip de la siguiente url:
http://labs.jboss.com/jbossportal/download/index.html2.- Lo descomprimimos en un directorio y nos aseguramos de tener los permisos para levantar en servicio:
slack@debian:~/portals$
unzip jboss-portal-2.4.1-bundled.zip
este comando anterior descomprime el zip en el directorio donde nos encontramos, luego vamos al directorio bin de la raiz del jboss.
slack@debian:~/portals$
cd jboss-portal-2.4.1/bin/
slack@debian:~/portals/jboss-portal-2.4.1/bin$
ls -la
total 180
drwxr-xr-x 2 slack slack 4096 2006-12-20 17:26 .
drwxr-xr-x 8 slack slack 4096 2006-12-20 17:27 ..
-rw-r--r-- 1 slack slack 3539 2006-12-20 17:26 classpath.sh
-rw-r--r-- 1 slack slack 3479 2006-12-20 17:26 jboss_init_hpux.sh
-rw-r--r-- 1 slack slack 2463 2006-12-20 17:26 jboss_init_redhat.sh
-rw-r--r-- 1 slack slack 3750 2006-12-20 17:26 jboss_init_suse.sh
-rw-r--r-- 1 slack slack 535 2006-12-20 17:26 probe.bat
-rw-r--r-- 1 slack slack 918 2006-12-20 17:26 probe.sh
-rw-r--r-- 1 slack slack 3221 2006-12-20 17:26 run.bat
-rw-r--r-- 1 slack slack 1572 2006-12-20 17:26 run.conf
-rw-r--r-- 1 slack slack 38163 2006-12-20 17:26 run.jar
-rw-r--r-- 1 slack slack 4672 2006-12-20 17:26 run.sh-rw-r--r-- 1 slack slack 1813 2006-12-20 17:26 shutdown.bat
-rw-r--r-- 1 slack slack 17296 2006-12-20 17:26 shutdown.jar
-rw-r--r-- 1 slack slack 2061 2006-12-20 17:26 shutdown.sh
-rw-r--r-- 1 slack slack 2137 2006-12-20 17:26 twiddle.bat
-rw-r--r-- 1 slack slack 47481 2006-12-20 17:26 twiddle.jar
-rw-r--r-- 1 slack slack 2414 2006-12-20 17:26 twiddle.sh
-rw-r--r-- 1 slack slack 2037 2006-12-20 17:26 wstools.bat
-rw-r--r-- 1 slack slack 2776 2006-12-20 17:26 wstools.sh
tendremos que dar permiso al
run.sh para levantar el servidor jboss, con el siguiente comando:
slack@debian:~/portals/jboss-portal-2.4.1/bin$
chmod +x run.sh
IMPORTANTE: no correr run.sh hasta terminar la configuración
Ya tenemos listo jboss para arrancarlo, ahora veremos el tema de la configuración de la base de datos, aqui lo setearemos para postgresql.
Primero vamos al
webmin o algún gestor de bases de datos
Postgre, creamos una base de datos para el portal
(jbossportal), ademas nos creamos un usuario
(portaluser) y le asignamos una clave
(quaker77) para esta base de datos, con permisos para crear tablas.
Una vez creada correctamente la base de datos, verificamos que podamos conectarnos, para esto podemos ocupar un database explorer de bases de datos, del mismo ide Eclipse, Netbeans, u otro, ya conectados seguimos adelante con la configuracion de los archivos de jboss para postgresql.
Tendremos que editar 2 archivos de configuración, estos son:
postgres-ds.xmlportal-postgresql-ds.xml
y la ubicación donde deben ir el el portal es:
slack@debian:~/portals
/jboss-portal-2.4.1/server/default/deploy
Sin embargo la primera vez estos archivos no se encuentran el este directorio, ya que la configuración por default es con HSQL. si listamos los archivos vemos los archivos de configuración para
HSQL
slack@debian:~/portals/jboss-portal-2.4.1/server/default/deploy$
lsbsh-deployer.xml http-invoker.sar jboss-local-jdbc.rar
jmx-console.war monitoring-service.xml uuid-key-generator.sar
cache-invalidation-service.xml jboss-aop.deployer jboss-portal.sar jmx-invoker-service.xml
portal-hsqldb-ds.xml client-deployer-service.xml jboss-bean.deployer jbossweb-tomcat55.sar jsr88-service.xml properties-service.xml
ear-deployer.xml jboss-ha-local-jdbc.rar jbossws14.sar mail-ra.rar schedule-manager-service.xml ejb-deployer.xml jboss-ha-xa-jdbc.rar jboss-xa-jdbc.rar mail-service.xml scheduler-service.xml
hsqldb-ds.xml jbossjca-service.xml jms management sqlexception-service.xml
Pero como nosostros queremos levantar el portal jboss con PostgreSQL, debemos reemplazar estos archivos por los que corresponden para
PostgreSQL, el archivo
portal-postgresql-ds.xml, se encuantra en el directorio
Setup de la raiz del jboss, vamos allá entonces y procedemos a editarlo para nuestra base de datos
slack@debian:~/portals/jboss-portal-2.4.1/setup$
nano portal-postgresql-ds.xmlesto es lo importante:
PortalDS
jdbc:postgresql:jbossportal
org.postgresql.Driver
portaluser
quaker77
Guardamos el archivo en:
slack@debian:~/portals
/jboss-portal-2.4.1/server/default/deploy
y eliminamos el archivo que correspondia a
HSQL, portal-hsqldb-ds.xml
posteriormente hacemos lo mismo para
postgres-ds.xml
Este archivo se encuentra en:
slack@debian:~/portals/jboss-portal-2.4.1/docs/examples/jca$ ls
asapxcess-jb3.2-ds.xml facets-ds.xml hsqldb-encrypted-ds.xml jms-ds.xml mssql-ds.xml pointbase-xa-ds.xml sybase-ds.xml
cicsr9s-ds.xml fastobjects-jboss32-ds.xml informix-ds.xml jsql-ds.xml mssql-xa-ds.xml
postgres-ds.xmldb2-400-ds.xml firebird-ds.xml informix-xa-ds.xml lido-versant-service.xml mysql-ds.xml progress-ds.xml
db2-ds.xml generic-ds.xml jboss-ha-local-jdbc.rar mimer-ds.xml oracle-ds.xml sapdb-ds.xml
db2-xa-ds.xml hajndi-jms-ds.xml jboss-ha-xa-jdbc.rar mimer-xa-ds.xml oracle-xa-ds.xml sapr3-ds.xml
derby-ds.xml hsqldb-ds.xml jdatastore-ds.xml msaccess-ds.xml pointbase-ds.xml solid-ds.xml
Procedemos a editarlo de la misma manera:
slack@debian:~/portals/jboss-portal-2.4.1/docs/examples/jca$
nano postgres-ds.xml
de dejamos como se ve:
PostgresDS
jdbc:postgresql://[servername]:[port]/[database name]
org.postgresql.Driver
portaluser
quaker77
select 1
select 1
Lo guardamos y copiamos al directorio:
slack@debian:~/portals
/jboss-portal-2.4.1/server/default/deploy
y eliminamos el archivo que correspondia a
HSQL, hsqldb-ds.xmlAhora buscamos el driver para conectarnos a postgre, yo tengo,
postgresql-jdbc3-8.1-405.jar
lo copiamos a:
slack@debian:~/portals/jboss-portal-2.4.1/server/default/lib$ ls
activation.jar commons-collections.jar jboss-backport-concurrent.jar jboss-management.jar jbosssx.jar
postgresql-jdbc3-8.1-405.jarantlr-2.7.6.jar commons-httpclient.jar jboss-common-jdbc-wrapper.jar jboss-monitoring.jar jboss-transaction.jar properties-plugin.jar
autonumber-plugin.jar commons-logging.jar jboss-hibernate.jar jbossmq.jar jmx-adaptor-plugin.jar scheduler-plugin-example.jar
bcel.jar hibernate3.jar jboss-j2ee.jar jboss-remoting-int.jar jnpserver.jar scheduler-plugin.jar
bindingservice-plugin.jar hsqldb.jar jboss.jar jboss-remoting.jar jpl-pattern.jar snmp-support.jar
bsf.jar hsqldb-plugin.jar jboss-jaxrpc.jar jbossretro-rt.jar jpl-util.jar wsdl4j.jar
bsh-1.3.0.jar javassist.jar jboss-jca.jar jboss-saaj.jar log4j.jar xmlentitymgr.jar
bsh-deployer.jar javax.servlet.jar jboss-jsr77.jar jboss-serialization.jar mail.jar
cglib.jar javax.servlet.jsp.jar jboss-jsr88.jar jboss-srp.jar mail-plugin.jar
Una vez todo listo, vemos la configuración que se despliega cuando arrancamos el portal: