Desventuras en DSpace – Parte 1: Inicio

Esta nueva desventura refleja las decepciones de mi trabajo diario con DSpace. Está orientada a enseñar a configurar el DSpace, para quienes no saben nada de DSpace, pero que conocen de HTML y desarrollo Web en general.

Este artículo se centra en la configuración de DSpace corriendo sobre un servidor Linux. En mi caso será un Ubuntu 18, usando la interfaz XMLGUI.

Debido a la extensión del tema, este artículo está dividido en varias partes, que deberían ser leídos en forma secuencial, aunque no es obligatorio si ya se conoce algo de DSpace.

<<< ADVERTENCIA >>>: El estilo de este artículo es (o pretende ser) informal, directo, crudo, sincero y atrevido. Si usted es sensible y espera algo serio, con palabras respetuosas y que le eche flores a DSpace, NO LO LEA.

La intro

DSpace dice ser una herramienta de código abierto, bastante usada para crear repositorios digitales o institucionales. Para mi es una pérdida de tiempo más que no vale la pena usar a menos que sea una orden  y haya buena paga; pero no hay que desmerecer sus bondades, que ahora que lo pienso no se me ocurre ninguna. Como siempre, si hay dudas sobre lo que es DSpace, les remito, con toda amabilidad que se vayan a la web, que allí sobra información que no pienso repetir.

Al margen de las opiniones personales, esta desventura se centrará en aprender a configurar DSpace corriendo sobre linux. En el mejor de los casos Ud. terminará como experto en DSpace. En el peor de los casos terminará más confundido de lo que empezó y solo habrá perdido su tiempo.

Quien escribe, o sea yo, nunca había usado este programa antes, así que puedo estar cometiendo errores supremos. De todas formas transmito mi experiencia para quedar tranquilo con mi conciencia y también para que me sirva de referencia en el futuro, cuando esté haciendo cosas más importantes.

Filosofía del DSpace

Si bien esta sección es aburrida puede parecer aburrida, conviene leerla para entender mejor a lo que nos enfrentamos.

En realidad toda herramienta de software debe tener un diseño y este diseño suele seguir algunos lineamientos o patrones de diseño. DSpace no es la excepción. Aquí menciono algunas reglas que son importante recordar en el futuro:

REGLA 1 

DSpace realiza el proceso de generación de páginas en dos fases:

  • Generación de contenido.
  • Aplicación de estilos.

DSpace se personaliza usando aspectos y temas.  Los aspectos agregan funcionalidades al repositorio (Como los «plugins» de wordpress), mientras que los temas, definen la parte visual del contenido.

Los aspectos son como cajas que toman un documento con el contenido y lo convierten a otro documento con el contenido modificado.

REGLA 2

DSpace maneja dos tipos de interfaz gráfica: La XMLUI y la JSPUI. En teoría ambas pueden hacer lo mismo. Más adelante doy más información (no mucha)  al respecto.

REGLA 3

Los mismos temas se pueden aplicar a múltiples repositorios, como es común en los CMS. Pero en DSpace un mismo repositorio, puede a la vez usar diversos temas, para mostrar diversas partes del contenido. Inclusive, los temas pueden aplicarse específicamente a una sola página del repositorio.

REGLA 4

El contenido en sí del repositorio se guarda en una base de datos. DSpace soporta PostgreSQL y Oracle.

Una vez instalado el DSpace, no deberíamos tener necesidad de interactuar con la base de datos así que no es un tema crítico.

REGLA 5

La organización del DSpace tiene varios niveles:

Ítem -> Colección -> Comunidad.

Donde las flechas que apuntan a la derecha significan algo como: «Pertenece a una».

Esto es a grandes rasgos. La jerarquía es más larga si consideramos que los ítems pueden contener archivos y «metadata».

REGLA 6

Otra de las peculiaridades que nos encontramos en DSpace es que se manejan de forma separada los archivos de instalación (dspace-source) y los archivos de la aplicación (dspace) y por ello nos encontraremos frecuentemente con archivos duplicados que hay que saber cómo modificar. Esto es especialmente problemático para los archivos de configuración, pero de eso «hablo» más tarde.

Con estas pocas reglas, tenemos ya para empezar. Lo mejor es aprendérselas y repetirlas de memoria, antes de seguir. Así se sentirá menos desubicado. 

¿XMLUI y JSPUI?

Sucede que DSpace viene en dos sabores. En realidad son dos interfaces el JSPUI y el XMLUI. Estas dos palabritas sonarán bastante si usted va a trabajar con DSpace, así que convendría agregarlas a nuestro diccionario DSpace:

  • XMLUI.- Interfaz de usuario que usa archivos XML. También conocido Manakin, que es el nombre de un pájaro con colores, que no sé que tenga que ver con DSpace.
  • JSPUI.- Interfaz de usuario basada en JSP (Java). O sea, la otra interfaz.

Ahora si la pregunta es ¿Cuál es mejor?, la respuesta es «No sé. Depende».

Y si la pregunta es ¿Cuál debo usar?, la respuesta es «No sé. Depende».

Como casi todo en la vida, ambas opciones tienen sus ventajas y desventajas. Hay amplia información en la web. Por mi parte anotaría que la interfaz XMLUI, la que usaremos en este artículo, es la más reciente y parece que es la que tiene más futuro. JSPUI por su parte es la más extendida por ser la primera que apareció.

 

Apagando y prendiendo el DSpace

Algo que estaremos haciendo con mucha frecuencia y que conviene aprender es cómo apagar y levantar el DSpace.

Esta rutina nos será útil, para cuando queramos hacer efectivos algunos cambios, que no se pueden realizar en caliente. Así es, DSpace necesita que se apague y se levante, cuando se realizan algunos cambios. Esta es la parte fea. Y lo más feo aún es que este proceso es algo lento, como se podría esperar de cualquier cosa que maneje Java. Y no es que yo tenga algo en contra de Java. Bueno sí, pero eso es otro tema.

Volviendo al punto. Para apagar el DSpace, habría que bajar el Tomcat. ¿Qué es eso? Pues si no sabe lo que es eso, Ud. no está listo para este artículo.

Normalmente en Ubuntu el Tomcat se controla con el archivo «/etc/init.d/tomcat», pero esto puede variar dependiendo de su versión de Tomcat y de Sistema Operativo.

En mi caso, puedo ejecutar los siguientes comandos:

/etc/init.d/tomcat start
/etc/init.d/tomcat stop
/etc/init.d/tomcat restart

Para algunos, el comando será

/etc/init.d/tomcat5.5 start
/etc/init.d/tomcat5.5 stop
/etc/init.d/tomcat5.5 restart

O algo similar.

Para verificar que el Tomcat está corriendo, usaremos el comando:

ps -ef | grep tomcat

Que nos mostrará los procesos que tengan la cadena «tomcat» en alguna parte.

La salida será algo así:

Que nos muestra dos procesos. Uno es para el Tomcat en sí, y el otro es el mismo comando que estamos lanzando. Si esto le resulta confuso, hay que revisar un poco de comandos y procesos de Linux.

Luego para detener el Tomcat (Ocasionando que nuestra página DSpace caiga) solo basta con ejecutar el /»etc/init.d/tomcat stop».

Si ahora lanzamos un «ps -ef | grep tomcat», veremos que el proceso ya no aparece:

Para verificar que hemos detenido al Tomcat de nuestro DSpace (pueden haber más de uno), solo hay que ir a la página y veremos que la página ya no está disponible.

Ahora para levantar nuestra página de nuevo, solo basta con lanzar el comando «/etc/init.d/tomcat start» y sentarse a esperar unos segundos (o minutos), porque este Tomcat se levanta con la prisa de una tortuga vieja.

ADVERTENCIA: No hacer nada con el servidor, mientras está levantando el Tomcat. Se puede molestar.

Si todo anda bien, tendremos nuestro Tomcat corriendo de nuevo (Lanzar un «ps -ef | grep tomcat» para verlo) y nuestra página de DSpace, activa de nuevo (esto tarda más).

Si las cosas se ponen complicadas, y por allí nos aparecen 20 procesos del Tomcat o mensajes de error de Java (No me sorprendería), siempre queda la opción de darle un «reboot» al servidor.  

Si todo falla

Si por algún motivo se cayó el servidor, o no puede levantar el Tomcat, o no puede ver la página de su repositorio, lo único que queda es reiniciar todo:

sudo reboot

Para ello debe tener privilegios para el «sudo».

Si al levantar el servidor, sigue sin funcionar, no queda más que pedir ayuda y llamar a alguien más listo que usted.


Sé el primero en comentar

Dejar una contestacion

Tu dirección de correo electrónico no será publicada.


*