Mudanças entre as edições de "Instalação, migração e configuração - TEDE2"

De IBICT
Ir para: navegação, pesquisa
(Características e versionamento de softwares de apoio)
Linha 536: Linha 536:
  
 
Todas as falhas ocorridas no processo de importação ou exportação são direcionadas para uma área específica visível apenas para os administradores da BDTD local, onde é possível efetuar download dos arquivos e dos metadados do item (arquivo ''dublin_core.xml''). Este processo permite a realização de uma triagem, onde os itens problemáticos podem ser tratados de forma particular.
 
Todas as falhas ocorridas no processo de importação ou exportação são direcionadas para uma área específica visível apenas para os administradores da BDTD local, onde é possível efetuar download dos arquivos e dos metadados do item (arquivo ''dublin_core.xml''). Este processo permite a realização de uma triagem, onde os itens problemáticos podem ser tratados de forma particular.
 +
 +
== Layout ==
 +
 +
=== Folha de estilo DSpace ===
 +
Atualmente, o DSpace é dotado de duas interfaces gráficas: JSPUI, e XMLUI(concebida na versão 1.5 do DSpace).
 +
 +
A interface gráfica, JSPUI faz uso de JSPs (Java Server Page) para renderizar suas páginas. Isso é, os JSPs são executados no servidor (Tomcat, Jetty) resultando na entrega de um HTML para o usuário WEB. Até a versão 4.x do DSpace, as folhas de estilo eram empregadas de maneira precária na interface JSPUI: eram resultado de processamento de arquivos JSP, em outras palavras, ao invés de serem empregados arquivos do tipo “CSS” para registro do estilo, eram utilizadas páginas JSP, o que ocasionava em dificuldade de entendimento e desenvolvimento.
 +
 +
Ao passo em que a interface JSPUI apresentava essa característica, foi concebido um novo módulo de interface gráfica na versão 1.5: o XMLUI. Trata-se de uma interface que emprega tecnologias evoluídas para o processamento de folhas de estilos, a exemplo da utilização de XSLTs como conversores de XML para HTML e da clara divisão entre camada de serviço e interface gráfica. A interface XMLUI permite que o mantenedor de determinada instalação do DSpace alterne entre temas do repositório com pouco esforço e pouco (ou nenhum) impacto nas funcionalidades. A partir da versão 1.6, a interface XMLUI foi enriquecida com novos temas que representavam melhoria na experiência visual do repositório.
 +
 +
A partir do momento em que o módulo XMLUI fora fomentado por novos temas, a interface JSPUI permaneceu praticamente inerte: sua interface gráfica estava defasada com relação ao módulo XMLUI, quando a comparação era feita com outros sites da WEB o contraste se exponenciava. Contudo, na versão 4.0 o módulo JSPUI foi reformulado, recebendo tecnologias de ponta no que tange a folha de estilo e o XHTML. O HTML 5 foi aderido em conjunto com o CSS 3. Além disso, foi adotado o framework Bootstrap, que além de dispor de boa experiência visual também possui características responsivas: permite que um mesmo site seja bem visualizado tanto em dispositivos móveis quanto em PCs. Para conhecer mais detalhes sobre a inovação ocorrida no módulo JSPUI, a apresentação disposta no link a seguir pode ser utilizada como referência: http://pt.slideshare.net/DuraSpace/2514-dspace-user-interface-innovation-presentation-slides.
 +
 +
Dada a evolução da interface gráfica JSPUI no DSpace 4.0 e a facilidade de manutenção, essa foi a interface adotada como padrão no TEDE. Sabe-se que a interface XMLUI, apesar de ser rica em termos tecnológicos, representa grande curva de aprendizado no entendimento das tecnologias empregadas, fator que dificulta o processo de customização.
 +
 +
<center>''Interface gráfica do DSpace 1.8, com a interface JSPUI''</center>
 +
[[Arquivo:InterfaceJSPUI1.8.png|center]]
 +
 +
 +
<center>''Interface gráfica do DSpace 1.6, com a interface XMLUI e tema Mirage''</center>
 +
[[Arquivo:InterfaceXMLUI1.6.png|center]]
 +
 +
=== Estratégia de modificação do Layout do TEDE ===
 +
 +
Estilo do TEDE, assim como as folhas de estilo foram modificadas conforme instruções de boas práticas de customização do DSpace. Isso é:
 +
 +
*Os módulos de sobrescrita foram utilizados, a fim de evitar modificação no código fonte original. Em outras palavras, os arquivos de customização foram copiados do código original e modificados no módulos de sobrescrita, no caso da interface gráfica o módulo “jspui”:
 +
 +
TEDE/dspace/modules/jspui
 +
 +
*As customizações de folha de estilo foram efetuadas no módulo de sobrescrita e foi feito uso do arquivo de sobreposição “nativo” da folha de estilo: o dspace-theme.css. 
 +
O arquivo pode ser encontrado na seguinte localização do módulo de sobrescrita:
 +
 +
TEDE/dspace/modules/jspui/src/main/webapp/static/css/bootstrap/dspace-theme.css
 +
 +
O arquivo supracitado é a última folha de estilo importada nos cabeçalhos HTML do DSpace (tag “header”). Isso indica que, todas instruções presentes no arquivo terão precedência com relação às declaradas anteriormente.
 +
 +
Dessa maneira, o TEDE se fez utilizar do tema de CSS nativo do Bootstrap (presente por padrão no DSpace) e teve as diferenças de folha de estilo com relação ao tema original registradas no referido arquivo. Por exemplo, o tema nativo do DSpace tem as cores “preta” e “azul” predominantes. Essas características foram sobrepostas nesse arquivo.
 +
 +
<center>''Tabela de cores''</center>
 +
[[Arquivo:TabelaCores.png|center]]
 +
 +
 +
<center>''Tela Inicial TEDE2''</center>
 +
[[Arquivo:TelaInicial.png|center]]
 +
 +
 +
*Folha de estilo modificada, DSpace para TEDE2: https://www.dropbox.com/s/0cybat1jvg6g4kb/Documento%20t%C3%A9cnico%2003%20%286.3%29.pdf?dl=0 - Arquivo ''dspace-theme.css'' citado acima.

Edição das 15h24min de 3 de novembro de 2014

Índice

Instalação TEDE2

A customização do DSpace para teses e dissertações (TEDE 2) foi realizada por meio derivação (fork) do projeto original do DSpace, e pode ser baixada no endereço https://github.com/ibict-br/TEDE. Recomenda-se o uso da ferramenta SVN (https://subversion.apache.org/) para download do código fonte em sua última versão. Uma vez que este tenha sido baixado e instalado (o que é feito nas distribuições Debian por meio do comando: apt-get install subversion) é possível obter o código do TEDE 2 executando-se o seguinte comando:

svn co https://github.com/ibict-br/TEDE/trunk TEDE2-fonte

O sistema baixará todos os arquivos do projeto na pasta TEDE2-fonte, a qual estará abrigada dentro do diretório em que for executado o comando.


Requisitos

Os procedimentos de instalação do sistema TEDE 2 são basicamente os mesmos que na instalação do DSpace, e como há um conjunto bastante vasto de possibilidades de contexto de configuração de sistemas operacionais, sejam eles baseados em Unix, MAC OS, Linux ou Windows, optou-se como ponto de partida um cenário de uma máquina de processador Intel 64 bits, SO Linux Debian 7, memória RAM de 1GB e 50GB de disco rígido. Os usuários que desejam criar um ambiente virtual de testes, antes da antes da instalação definitiva no servidor de produção, podem acessar seguinte endereço, onde encontrarão um tutorial de como fazê-lo:

http://wiki.ibict.br/index.php/Criando_um_ambiente_virtual_de_testes

Para a execução dos procedimentos constantes no presente manual é necessário ter acesso com o perfil de administrador aos servidores de instalação do TEDE e DSpace/TEDE2. Dessa forma, é necessário acessar tanto as interfaces do sistemas quanto os terminais dos servidores, com a execução de linhas de comando. Procedimento este que deve ser efetuado por um profissional de informática, trabalhando em conjunto, com o administrador do sistema TEDE e o administrador do sistema DSpace/TEDE2.

Configuração do arquivo de instalação (build.properties)

Uma vez baixado o pacote do TEDE 2, considerando-se que este esteja, descompactado, na pasta TEDE2-fonte, é necessário que se realize algumas modificações no arquivo TEDE2-fonte/build.porperties. Este é composto de parâmetros que adequam a instalação a cada ambiente específico. Segue uma tabela descritiva dos principais variáveis a serem configuradas:


Variáveis Configurações
dspace.install.dir=/dspace-base Diretório destino de instalação;
dspace.hostname = localhost Nome do servidor na rede;
dspace.baseUrl = http://localhost:8080 Endereço do servidor na rede;
dspace.url = ${dspace.baseUrl}/tede URL da aplicação na internet;
dspace.name = TEDE Nome da BDTD;
db.url=jdbc:postgresql://localhost:5432/dspace;

db.username=dspace

db.password=dspace

Endereço do servidor SGBD do banco de dados e usuário e senha deste. Recomenda-se alterar somente o password;
mail.server = smtp.example.com Servidor de email da instituição, para que o DSpace envie mensagens automáticas;
mail.server.username=

mail.server.password=

Usuário e senha do servidor de email;
mail.from.address Endereço de email do remetente das mensagens;
mail.feedback.recipient = Endereço que receberá as mensagens de feedback dos usuários;
mail.admin = Email do administrador do repositório;
mail.alert.recipient= Email que receberá os erros de sistema;
mail.registration.notify= Email que receberá a notificação de registros de usuários;
mail.helpdesk = Email do responsável por gerenciar as solicitações de cópia de documentos embargados ou de acesso restrito;
handle.prefix = tede Prefixo identificador da instancia do DSpace;
xpdf.path.pdftotext = /home/dspace/xpdfbin-linux-3.04/bin64/pdftotext

xpdf.path.pdftoppm = /home/dspace/xpdfbin-linux-3.04/bin64/pdftoppm

xpdf.path.pdfinfo = /home/dspace/xpdfbin-linux-3.04/bin64/pdfinfo

Servidor de email da instituição, para que o DSpace envie mensagens automáticas;

Características e versionamento de softwares de apoio

Característica Valor utilizado
Encoding de arquivos UTF-8
Versão do Java 1.7 (JDK)
Versão do Apache Tomcat 7.0
Versão do Apache Ant 1.9.2
Versão do Apache Maven 3.1.1
Versão do PostgresSQL 9.0

Instalação das ferramentas

O DSpace/TEDE2 necessita de algumas ferramentas para sua correta compilação (Oracle-JDK, jai_core, jai_imageio e Apache-Maven), instalação (Apache-Ant) e execução (Oracle-JDK, Apache-Tomcat, PostgreSQL e XPDF), no entanto, recomenda-se a instalação via apt-get somente do PostgreSQL. Os demais podem ser baixados em suas versões binárias.

A seguir será dado um passo-a-passo da instalação de cada uma dessas ferramentas e por fim, a compilação e instalação do DSpace/TEDE2.

Passo 1 - Criando usuário DSpace

Para que as aplicações não fiquem espalhadas pelo servidor, com diversos tipos de permissões de acesso, recomenda-se a criação de um usuário de sistema de nome dspace que mais adiante será também o usuário do banco banco de dados. Os comandos para criação do grupo dspace e usuário dspace, e senha para usuário devem ser executados com o usuário root, e são os seguintes:

addgroup dspace
useradd –m dspace -g dspace
passwd dspace

Passo 2 - PostgreSQL

O DSpace necessita de uma base de dados para armazenamento dos registros. Os SGBDs recomendados para essa tarefa são o PostgreSQL ou Oracle DB. Por ser um software livre e atender perfeitamente aos requistos do DSpace, o PostgreSQL tem relativa vantagem em relação ao Oracle DB. Para instalação do PostgreSQL basta executar, com perfil de root, o comando:

apt-get install postgresql

Após sua instalação é necessário realizar alterações em alguns arquivos de configuração do SGBD. Primeiro, estando ainda logado como root, deve-se acessar o arquivo /etc/postgresql/x.x/main/postgresql.conf (onde x.x será o número da versão do postgreSQL instalado) e retirar o # da linha:

#listen_addresses = 'localhost'

Após, logado ainda como root, acessar /etc/postgresql/x.x/main/pg_hba.conf (x.x é o número da versão do postgreSQL instalado) e adicionar, ao final do arquivo, a seguinte linha:

host all all 127.0.0.1 255.255.255.255 md5

Em seguida, logado como root, deve-se criar o usuário do banco. Para tanto deve-se executar os seguintes comandos (o sistema pedirá uma senha, a qual deve ser fornecida de acordo com o preenchido no parâmetro db.password do arquivo build.properties) :

su postgres
createuser –d –A –P dspace
exit

Agora para criar o base de dados do sistema (que deverá receber o mesmo nome dado no final do parâmetro db.url):

su dspace
createdb -E UNICODE dspace

Passo 3 - Oracle-JDK

O Java Development Kit (JDK), promove portabilidade das aplicações desenvolvidas nessa linguagem. Existem versões open source dessa ferramenta, como o Open-JDK, no entanto a compilação e execução do DSpace 4.x funciona somente com versão Oracle-JDK 1.7.x. Esta não é uma versão livre, mas ao aceitar sua licença, há a liberação do download, sem custos para o usuário. A Oracle-JDK 1.7.x pode ser baixada no seguinte endereço:

http://www.oracle.com/technetwork/java/javase/downloads/jdk7-downloads-1880260.html?ssSourceSiteId=otnpt


Após baixar o arquivo, deve-se alterar sua extensão de .gz para .tar.gz. Exemplo: de jdk-7u71-linux-x64.gz para jdk-7u71-linux-x64.tar.gz. Feito isso, estando logado como root, é necessário descompactar o pacote por meio dos comandos:

mkdir /opt/jdk
tar -zxf jdk-7u71-linux-x64.tar.gz -C /opt/jdk

Feito isso, deve-se instalar o pacote, o que pode ser efetuado, estando ainda logado como root, por meio dos comandos:

update-alternatives --install /usr/bin/java java /opt/jdk/jdk1.7.0_71/bin/java 100
update-alternatives --install /usr/bin/javac javac /opt/jdk/jdk1.7.0_71/bin/javac 100


Após, como root, execute comando update-alternatives --config java, e selecione a opção (digitando o número de aparece à esqueda) em que aparece o caminho /opt/jdk/jdk1.7.0_71. Verifique se a versão corrente é a versão instalada por meio de:

java -version

Deve aparecer como resposta, no terminal, algo como:

"java version "1.7.0_71"
Java(TM) SE Runtime Environment (build 1.7.0_71-b13)
Java HotSpot(TM) 64-Bit Server VM (build 25.5-b02, mixed mode)"

Passo 4 - Apache-Maven

O Apache-Maven é a ferramente que realiza a construção de toda a árvore de pacotes que serão necessários para instalação do DSpace, e além disso compila o código fonte, deixando-o pronto para instalação. A partir deste ponto, do passo-a-passo de instalação, o Apache-Maven e as demais ferramentas devem ser instaladas e executadas com o usuário de sistema dspace. Para a instalação do Apache-Maven, deve-se baixar o seu pacote binário no endereço http://maven.apache.org/ e descompactá-lo, estando dentro de /home/dspace/ por meio do comando (x.x.x representa o número da versão baixada):

tar -vzxf apache-maven-x.x.x-bin.tar.gz

Caso esteja em um servidor que necessita de autenticação em um servidor proxy para baixar recursos da internet, é necessário criar uma pasta de nome .m2 dentro de /home/dspace/, e dentro da pasta .m2 criar um documento de nome settings.xml com o seguinte conteúdo:

<settings>
    <proxies>
        <proxy>
           <active>true</active>
           <protocol>http</protocol>
           <host>10.1.1.1</host>
           <port>80</port>
           <username>username</username>
           <password>password</password>
           <nonProxyHosts>localhost|127.0.0.1</nonProxyHosts>
        </proxy>
    </proxies>
</settings>

Onde 10.1.1.1 deve ser trocado pelo endereço IP do proxy. O número 80 é porta de conexão com este, e username e password são o login e senha de autenticação no proxy.

Passo 5 -Bibliotecas “jai_core”e “jai_imageio”, e o rederizador “XPDF”

Nativamente, o DSpace não cria, e portanto não exibe, as miniaturas das capas dos documentos PDF’s depositados. Assim é necessário que se instale um conjunto de ferramentas (as bibliotecas jai_core e jai_imageio, e o renderizador XPDF) para que essa funcionalidade seja executada de forma correta. Com o Apache-Maven instalado e configurado, deve-se fazer download das bibliotecas jai_core e jai_imageio, e renderizador XPDF dentro da pasta /home/dspace. Estes pacotes podem ser baixados nos seguintes endereços:

Após o download, estando dentro /home/dspace, devem ser executados os seguintes comandos:

/home/dspace/apache-maven-x.x.x/bin/mvn install:install-file \
-Dfile=jai_core-1.1.2_01.jar \
-DgroupId=javax.media \
-DartifactId=jai_core -Dversion=1.1.2_01 \
-Dpackaging=jar \
-DgeneratePom=true

Após a execução, o sistema deverá exibir um pequeno log e a mensagem final BUILD SUCCESSFUL

/home/dspace/apache-maven-x.x.x/bin/mvn install:install-file \
-Dfile=jai_imageio-1_1/lib/jai_imageio.jar \
-DgroupId=com.sun.media \
-DartifactId=jai_imageio \
-Dversion=1.0_01 \
-Dpackaging=jar \
-DgeneratePom=true

Após a execução, o sistema deverá, novamente, exibir um pequeno log e a mensagem final BUILD SUCCESSFUL

Passo 6 - Apache-Ant

A ferramenta que executa a tarefa de instalação do DSpace é o Apache-Ant. Para tornar esse software disponível para uso, basta realizar o download de seu pacote binário em http://ant.apache.org/ e descompactá-lo dentro de /home/dspace.

Passo 7 - Apache-TomCat

O Apache-Tomcat, é o servidor Web que torna disponível o acesso do DSpace via rede (seja a Intranet ou a Internet). Para instalá-lo basta baixar seu pacote binário em http://tomcat.apache.org/ e descompactá-lo dentro de /home/dspace. É necessário que se faça ainda uma mudança na codificação de apresentação dos arquivos. Acessando o arquivo home/dspace/apache-tomcat-x.x.x/conf/server.xml e inserindo o termo URIEncoding="UTF-8" no seguinte conector:

<Connector port="8080" protocol="HTTP/1.1"
connectionTimeout="20000"
redirectPort="8443" URIEncoding="UTF-8" />

Passo 8 - Compilando e instalando o DSpace/TEDE2

Nos passos 1 a 7, foi construída a infraestrutura necessária para compilação, instalação e execução do DSpace/TEDE2 . Portanto, o ponto agora a ser abortado é a seguinte sequência:

  • Compilação do código fonte do DSpace, que é realizada por meio do Apache-Maven;
  • Instalação do código compilado por meio do Apache-Ant; e
  • Ativação do serviço Web por meio do Apache-Tomcat.

Todos comandos a seguir, salvo se explicitado o login de root, devem executados com o usuário dspace.

  • A compilação é executada dentro da pasta TEDE2-fonte, e se dá por meio do comando:
/home/dspace/pache-maven-x.x.x/bin/mvn -Pxpdf-mediafilter-support -U clean package

Após aproximadamente 30 min, o sistema deve responder com um log na tela, e ao final a mensagem BUILD SUCCESSFUL.

  • Uma falha bastante comum, nesse processo, é o erro de permissão de escrita na pasta definida no dspace.install.dir=/dspace-base do arquivo build.properties. Portanto para se certificar que o diretório destino de instalação está com permissões de escrita ao usuário dspace, deve-se logar como root e executar o comandos:
mkdir /dspace-base
chown dspace:dspace /dspace-base

Retornado-se ao login com o usuário dspace, a instalação deve ser executada dentro de TEDE2-fonte/dspace/target/dspace-4.x-build, e é realizada por meio do comando:

/home/dspace/apache-ant-x.x.x/bin/ant fresh_install

Após, no máximo 10 min, o sistema deve responder com um log na tela, e ao final a mensagem BUILD SUCCESSFUL.

  • A ativação do servidor Web Apache-Tomcat com a aplicação do DSpace se dá por meio dos comandos:
mv /home/dspace/apache-tomcat-x.x.x/webapps/ROOT \
/home/dspace/apache-tomcat-x.x.x/webapps/tomcat

cp -R /home/dspace/dspace-base/webapps/jspui /home/dspace/apache-tomcat-x.x.x/webapps/ROOT
cp -R /home/dspace/dspace-base/webapps/solr /home/dspace/apache-tomcat-x.x.x/webapps/
cp -R /home/dspace/dspace-base/webapps/oai /home/dspace/apache-tomcat-x.x.x/webapps/

export JAVA_OPTS="-Xmx512M -Xms64M -Dfile.encoding=UTF-8"

este último expande os parâmetro de memória reservada para o Apache-Tomcat. Contudo, se o servidor for reiniciado, essa configuração será perdida. Para torná-la definitiva, deve-se, com perfil de root, editar o arquivo /etc/profile e adicionar ao final dele as linhas:

JAVA_OPTS="-Xmx512M -Xms64M -Dfile.encoding=UTF-8"
export JAVA_OPTS

Por fim, basta que se inicie o servidor Apache-Tomcat:

/home/dspace/apache-tomcat-x.x.x/bin/startup.sh

O TEDE 2 poderá ser acessado em https://meuservidor.br:8080, onde o termo meuservidor deverá ser substituído pelo endereço do servidor onde está instalado o DSpace.

Passo 9 - Configurações pós-instalação

Após a instalação do DSpace/TEDE2 é necessário que se crie uma senha de administrador, o que pode ser feito pelo comando:

/dspace-base/bin/dspace create-administrator

Ainda é necessário que se inclua alguns comandos na Contrab do sistema, que é uma forma de agendar algumas tarefas que deverão ser executadas durante o período em que o uso do sistema pela comunidade não seja tão intenso. Esse procedimento pode ser efetuado, quando se está logado como root, se executa o comando: crontab -e . Após abertura do arquivo da crontab, devem ser adicionadas as seguintes linha no final do texto:

0 0 * * * /dspace-base/bin/dspace oai import

0 1 * * * /dspace-base/bin/dspace filter-media

0 2 * * * /dspace-base/bin/dspace index-discovery

Customizações específicas

Há parâmetros que são inerentes a cada instituição, como o nome da instituição, os logos exibidos no cabeçalho e rodapé e telefone de contato administrativo. A seguir será abordado esse passo final de customização, que deverá deixar a BDTD local pronta utilização da comunidade.

Há dois logos que devem ser substituídos:

logo do rodapé Logo50.png (50 x 50 pixels) e;

logo do cabeçalho Logo132.png (132 x 132 pixels) .

Basta que se substitua respectivamente, com os logos da instituição, os arquivos:

/home/dspace/apache-tomcat-x.x.x/webapps/ROOT/image/logo-instituicao-rodape.png
/home/dspace/apache-tomcat-x.x.x/webapps/ROOT/image/logo-instituicao.png

Lembrando que os arquivos substituídos deverão ter mesmo nome e extensão (logo-instituicao-rodape.png e logo-instituicao.png).

No caso do nome da instituição do contato telefônico, é necessário que se edite o arquivo /dspace-base/config/dspace.cfg, alterando-se os seguintes parâmetros:

  1. Dados da instituição
dspace.institution.heading1=Nome da instituicao
dspace.institution.phone=(62) 3333-3333
dspace.institution.email=repositorio@instituicao.br

Para que estas últimas alterações entrem em vigor é necessário que se reinicialize o Apache-Tomcat:

/home/dspace/apache-tomcat-x.x.x/bin/shutdown.sh

Executar o comando ps -ef | grep tomcat até perceber que o serviço do Apache-Tomcat não está mais de pé, e só iniciar novamente o servidor:

/home/dspace/apache-tomcat-x.x.x/bin/startup.sh

Exportação de Teses e Dissertações do Sistema TEDE Antigo

Para exportação de teses e dissertações de um sistema TEDE, o IBICT desenvolveu um Addon de exportação, conjunto de programas que podem ser adicionados ao sistema TEDE, para disponibilizar a facilidade de exportação de teses e dissertações no formato de importação do sistema TEDE 2. Este addon, não afeta as facilidades existentes no sistema TEDE, apenas acrescenta essa nova facilidade, ofertando certa segurança à aplicação.

Nesse ponto, a facilidade de exportação fica disponível apenas para o administrador, evitando acessos indevidos a este tipo de procedimento. Da mesma forma, os arquivos exportados ficam disponíveis em uma pasta do servidor em que o sistema TEDE esta implementado. Assim, somente a equipe técnica da instituição tem acesso aos registros e arquivos exportados.

Para a implantação deste addon de exportação, no entanto, é necessária algumas operações que garantem um menor impacto no sistema. Entretanto, é importante mencionar que este addon não faz alteração nos dados existente no sistema, apenas copia os dados necessários para a exportação, sem alterá-los.

Procedimentos para instalação do Plug-in de exportação de teses e dissertações do sistema TEDE para sistemas desenvolvidos com DSpace

O plugin, como um conjunto de programas, deve ser instalado pela equipe de TI da instituição. Para tanto, segue-se um procedimento. A instalação do plugin dá-se por meio de cópia de arquivos em diretórios específicos, não existindo um instalador. Assim, a seguir, o passo-a-passo para a instalação.

Passo 1 - Obtenção do Plugin

O Plugin está disponível, em formato compactado, com extensão .zip, para ser baixado no endereço https://github.com/ibict-br/TEDE-legado/tree/exportador ou pode-se solicitar um cópia pelo email: bdtd@ibict.br. O nome do arquivo é "TEDE-legado-exportador.zip" e deve ser descompactado diretamente no servidor do sistema TEDE antigo ou em um desktop para ser, posteriormente, transferido ao servidor.

Passo 2 - Fazer cópia de segurança do sistema TEDE

O Plugin de exportação não faz grandes alterações no sistema TEDE que altere os dados das teses e dissertações contidos no sistema, mas por precaução, é altamente recomendável que se faça uma cópia de segurança, em todo procedimento de manutenção de sistemas informatizados.

Assim, fazer uma cópia de segurança alinha-se aos procedimentos padrão de manutenção do sistema TEDE. Com esse procedimento, assegura-se a integridade original de todo o sistema TEDE. Caso venha ocorrer algum problema, basta retornar a cópia de segurança para ter o sistema no estado original.

Para os programas e arquivos arquivados no sistema, basta copiar o sistema de diretório do sistema TEDE, desde o diretório raiz (diretório inicial do sistema, em que está contido todo o sistema). Geralmente, se instalado na forma padrão, por ser um sistema PHP/Apache, fica no diretório /var/www/[nome-do-diretório-tede]. Para copiar pode-se utilizar o comando de sistema operacional cp –R que copia recursivamente os diretórios.

cp –R /var/www/[nome-do-diretório-tede] /var/www/[nome-do-backup]

Para as bases de dados, o sistema TEDE possui duas bases de dados, TDE e TDE_SUBMISSAO, em banco de dados MySql. Assim, é importante que a cópia de segurança contemple as duas bases de dados. Para fazer a cópia das bases de dados, pode-se fazer uso das facilidades do banco de dados MySql, da seguinte forma:

mysqldump -u [nomedousuario] -p [nomeBanco] > [nomeBackUp]

Passo 3 - Descompactar o Plug-in de exportação

O Plugin de exportação deve ser descompactado ou copiado para o diretório raiz do sistema TEDE, sobrescrevendo alguns programas. Por isso, é importante a cópia de segurança. O Plug-in de exportação possui uma nova pasta chamada arquivo-exportacao e alguns novos programas a serem sobrescritos na pasta tde-admin. Deve-se ter cuidado para manter os programas já existentes, apenas copiar ou sobrescrever os novos programas. A estrutura do Plugin de exportação é o seguinte:

  • arquivo-exportacao (pasta vazia em que as teses e dissertações serão exportadas, pasta destino dos dados exportados)
  • tde-admin (pasta existente no sistema TEDE, com os programas novos e alterados)
    • biblioteca (pasta existente no sistema, com novos programas)
      • export.php (programa exportador)
      • detalhar_export.php (página de detalhamento da exportação)
      • diretorio_export.php (arquivo para configuração do diretório de saída da exportação – padrão: arquivos_exportacao)
      • excluir_export.php (script de exclusão de uma exportação)
      • exportar.php (página de detalhamento da exportação)
      • tde_admin.php (página de administração do sistema TEDE, único programa a ser sobrescrito, para adicionar a opção de menu de exportação)
      • tela_export.php (página de que exibe as exportações)
  • log-export.sql (script sql para alteração da base de dados, TDE, do sistema TEDE para criar tabela para conter os registros de logs da exportação).

Passo 4 - Verificar permissões

Como o Plugin precisa criar pastas e arquivos no diretório arquivos_exportacao, o sistema TEDE requer permissão de escrita neste diretório. Para tanto, use o comando de sistema operacional chmod com o argumento –R (recursivo a todos os subdiretórios) e 755 (7=permissão total para o dono do sistema, 5=leitura e execução para os membros do grupo do dono do sistema, e 5=leitura e execução para os demais usuários). Assim, de forma padrão, o comando ficaria assim:

chmod –R 755 [usuário-Apache:grupo-Apache, geralmente o www-data para os dois] arquivo-exportacao

Para verificar o usuário dono do sistema, pode-se dar o comando ps – ef | grep apache. Uma lista é apresentada, que na primeira coluna aparece o dono do sistema, que, geralmente, é o www-data.

Passo 5 - Criar tabela para registros de log da exportação

Como o Plug-in de exportação contempla o registro e visualização do procedimento de exportação diretamente na interface do sistema TEDE, uma tabela de banco de dados deve ser criada para esse fim. Para tanto, o arquivo “log_export.sql” é um script MySql que cria essa tabela (e deve ser aplicado na base TDE), que, também, pode ser criada manualmente com o comando em SQL (Structured Query Language), apresentado a seguir:

CREATE TABLE IF NOT EXISTS `log_export` (
 `le_data` datetime NOT NULL,
 `tsIdentificador` int(11) NOT NULL,
 `le_metadados` text,
 `le_arquivos` text,
 `le_diretorio` varchar(200) default NULL
) ENGINE=MyISAM DEFAULT CHARSET=latin1;

Passo 6 - Execução da exportação

A execução da exportação das teses e dissertações do sistema TEDE, no formato DSpace, dá-se na página de administrador. Para tanto o usuário deve ter acesso (usuário e senha com perfil de administrador do TEDE) para executá-lo. Ao entrar na página do administrador, uma nova opção no menu à esquerda se apresenta “Exportador DSPACE”, como mostra a Figura abaixo.

TelaInicialTedeAdm.jpg
Tela inicial do módulo Administrador sistema do sistema TEDE.

Ao clicar na opção de menu “Exportador DSPACE”, uma nova tela será apresentada com um menu com duas opções “Exportar” e “Visualizar”, como mostra a Figura abaixo. Esta é uma página de histórico e que mantêm as informações da última exportação. Para exportar as teses e dissertações, clique em exportar, para visualizar o resultado da exportação, clique em “Visualizar”.

Telavisualização.jpg
Tela visualização de exportações realizadas.

Na tela de visualização, há a opção de detalhar o processo de exportação. Clique em “detalhar”. Assim, o sistema apresenta uma listagem de todas as teses e dissertações exportadas e o status final do processo (Figura abaixo). Assim, pode-se verificar os registros que resultaram em erro, ou notificações de alerta, na exportação e fazer as devidas correções.

TelaDetalhamento.jpg
Tela de detalhamento de registro de exportação.

Este procedimento pode ser feito várias vezes, pois o sistema cria uma estrutura nova para cada exportação das teses e dissertações. Assim, ao se verificar, pelo detalhamento algum problema, pode-se corrigir e reexecutar a exportação. A exportação pode demorar alguns segundos, ou, para uma execução de grande vulto, algumas dezenas de minutos, pois o sistema tem que criar, para cada tese ou dissertação, uma pasta com arquivos do item.

TelaExportação.jpg
Tela com o local de confirmação para iniciar a exportação.

Ao término da exportação, a tela de resumo do processo será apresentada (figura abaixo). Nessa página, pode-se verificar as condições de termino da exportação, quantidade de itens exportados e erros. Da mesma forma, pode detalhar o processo para verificar os registros em que ocorreram erros, para ajustar e reexecutar a exportação.

TelaResumoExportação.jpg

Ao executar a exportação, o Plug-in cria um sistema de identificação da exportação, na pasta “arquivo_exportação”, conforme a data e hora da exportação. Assim, para cada exportação um diretório será criado para conter, exclusivamente, aquela exportação. Nesse caso, o diretório “arquivo exportação” terá várias subdiretórios, um para cada exportação executado.

Dentro da pasta de exportação estará a seguinte estrutura de diretórios:

  • Exportados (itens que foram exportados sem qualquer ocorrência de falha);
  • _erro_itens_triagem (itens que necessitam de tratamento especial, devido à ocorrência de erros na exportação)

Os erros de exportação serão armazenados em relatórios com o nome “logfile”, que dentro da pata de cada item que apresentou problema. Portanto aconselha-se realizar a importação dos itens da pasta “Exportados” e então prosseguir com uma análise caso a caso para cada objeto que pertencente ao diretório “_erro_itens_triagem” Para cada tese ou dissertação exportada existirá uma pasta, numerada sequencialmente, com os seguintes arquivos:

  • Contents (arquivo texto com o conteúdo da pasta, pois uma tese ou dissertação pode ter mais que um arquivo do texto completo, estar dividido em volumes e possuir um texto anexo da licença dos documentos)
  • dublin_core.xml (arquivo contendo os metadados da tese ou dissertação, no formato QDC para o DSpace)
  • logfile (presente somente quando há erro na exportação do item)
  • Arquivos da tese ou dissertação (os arquivos de texto completo)

A pasta de exportação, com as TDs exportadas, deve ser copiada para o servidor do DSpace, para o processo de importação. Caso estejam em servidores diferente, deve-se ter o cuidado de transferir e assegurar a codificação UTF-8, para evitar problemas na importação.

Importação das teses de dissertações para repositórios DSpace e para o DSpace/TEDE2

Há várias formas de se depositar teses e dissertações (TDs) no Sistema TEDE2, sendo a mais comum o processo de submissão que é executado diretamente pelas páginas Web do sistema. O processo de submissão é apropriado para inserir TDs uma a uma, num processo semelhante à catalogação, em que se descreve a TD, em formulário eletrônico, e depois carrega o arquivo completo.

Quando se têm muitas TDs para depositar, a melhor opção é a importação, que permite o depósito em lote, ou seja, várias TDs de uma só vez. Nesse caso, há outros procedimentos a serem efetuados, visto que é um processo informático, ou seja, feito diretamente no servidor e não pelas interfaces do sistema Web.

O processo de importação no TEDE2, utiliza as facilidades ofertadas pelo DSpace, ou seja, facilidades ofertadas nativamente, sem alteração. Para tanto, precisa que alguns requerimentos estejam a contento, tal como o formato dos arquivos para importação, que deve estar de acordo com os padrões do DSpace.

Importação para repositórios construídos em DSpace

O DSpace possui a facilidade de realizar importações em lote de arquivos, desde que este conjunto esteja em um formato conhecido. A estrutura que o plugin de exportação do TEDE gera está de acordo o padrão reconhecido pelo DSpace, contudo, ao contrário do que foi desenvolvido para o TEDE 2, não há uma interface nativa para o software original do DSpace, que o faça sem a necessidade de execução de alguns comandos via terminal.

Preparação do sistema DSpace

Para importar adequadamente as teses e dissertações exportadas no sistema TEDE é necessário que se realize algumas customizações no DSpace. Os únicos procedimentos a serem feitos são:

Os termos a serem inseridos na tabela original do DSpace são os seguintes 34 elementos:

dc.contributor.authorID

dc.contributor.authorLattes
dc.contributor.advisorID
dc.contributor.advisorLattes
dc.contributor.advisor-co1
dc.contributor.advisor-co1ID
dc.contributor.advisor-co1Lattes
dc.contributor.advisor-co2
dc.contributor.advisor-co2ID
dc.contributor.advisor-co2Lattes
dc.contributor.referees1
dc.contributor.referees1ID
dc.contributor.referees1Lattes
dc.contributor.referees2
dc.contributor.referees2ID
dc.contributor.referees2Lattes
dc.contributor.referees3
dc.contributor.referees3ID
dc.contributor.referees3Lattes
dc.contributor.referees4
dc.contributor.referees4ID
dc.contributor.referees4Lattes
dc.contributor.referees5
dc.contributor.referees5ID
dc.contributor.referees5Lattes
dc.identifier.doi
dc.description.resumo
dc.publisher.country
dc.publisher.department
dc.publisher.program
dc.publisher.initials
dc.rights.uri
dc.subject.cnpq
dc.thumbnail.url



AdicionarNovosCampos.png
Adicionar novos campos ao esquema original do DSpace.

Caso opte por colocar a exportação em uma única coleção, todas as teses e dissertações (TDs) migradas estarão juntas, sem separação por departamento, programas de pós-graduação ou outra estrutura que desejarem. Até certo ponto é mais fácil, pois terá que fazer o processo de migração apenas uma vez, carregando todas as TDs em uma única vez.

Caso opte por distribuir as teses e dissertações em várias coleções. Primeiramente, será preciso, separar as teses que vão para cada coleção. E será necessário repetir o processo de importação para cada coleção. Assim, têm-se duas etapas, da seleção das teses que vão para cada coleção e a importação.

Independente da opção a ser tomada, o processo de importação é simples e executado utilizando um aplicativo nativo do DSpace. Consiste em um comando, que deve ser dado diretamente no servidor do DSpace, por isso, executado pela equipe da TI.

Outro ponto importante é o identificador persistente da coleção ou coleções a receberem importações (handle). Independente da opção, a coleção que receberá as TDs deve estar criada e o seu identificador persistente (handle) anotado para ser informado no processo de importação.

PASSO 2 – Importação das teses e dissertações para o DSpace

A importação no DSpace é feita por um aplicativo nativo do DSpace e deve ser executada diretamente no servidor do DSpace, podendo utilizar programas de simulação de terminal, tal como o Putty. Para tanto, requer o acesso com um usuário com permissão nas pastas do DSpace, de preferência o usuário padrão DSpace. É importante que durante esse processo o serviço não esteja disponível para acesso externo, pois todos os itens exportados serão enquadrados em acesso livre para visualização, imediatamente após o término da importação de um lote de documentos. O comando que terá que ser repetido a cada bloco importado será o seguinte:

[dspace]/bin/dspace import --add --eperson=[email do adminsitrador] --collection=[handle da coleção] --source=[diretório dos arquivos exportados] --mapfile=mapfile

Para reexecutar o comando, pode-se trocar o parâmetro --add por -- replace, evitando erros desnecessários, ou apena –r. Todos os parâmetros possuem versões mais curtas, tais como –e, que é o usuário que será marcado com depositante, requerendo permissão de deposito. Para a coleção –c, requer o identificador persistente da coleção. O diretório fonte –s deve ser dado com todo o caminho, desde a raiz (/), para evitar problemas.

Deve-se utilizar sempre o -m=mapfile. E ainda, a cada importação, é aconselhado que se use também o parâmetro –t ao final do comando, assim será possível realizar um teste de importação antes que as TDs sejam efetivamente adicionadas ao DSpace. Ao final do teste, se tudo estiver OK, deve-se retirar o parâmetro e executar o comando novamente para efetuar a importação. Exemplos:

  • Primeiro:
/dspace-base]/bin/dspace import --add --eperson=admin@repositorio.br --collection=2/35 --source=/hom/dspace/20141107152211/Exeportados/Mestrado_em_Geologia/Doutorado --mapfile=mapfile -t
  • E, depois:
/dspace-base]/bin/dspace import --add --eperson=admin@repositorio.br --collection=2/35 --source=/hom/dspace/20141107152211/Exeportados/Mestrado_em_Geologia/Doutorado --mapfile=mapfile 

Após o processo de importação, as teses e dissertações já estarão disponíveis para consulta. Portanto se houver algum item de acesso restrito ou embargado, estes terão que ter as restrições executadas manualmente. Um formulário genérico para o DSpace que englobe todas as tipologias de documentos pode ser encontrado, e um vocabulário controlado da tabela de áreas de conhecimento do CNPq podem ser obtidos, respectivamente em:

https://github.com/ibict-br/TEDE-legado/blob/master/input-forms.xml 
https://github.com/ibict-br/TEDE/blob/dspace-4_x/dspace/config/controlled-vocabularies/cnpq.xml 

Para maiores informações de como ativar estes dois recursos, deve-se acessar: http://wiki.ibict.br/index.php/DSpace.

Importação para DSpace/TEDE 2

O desenvolvimento do TEDE 2 contemplou a criação de uma interface específica para importação das teses e dissertações. Para fazer uso desta, basta que se copie a pasta de exportação (exemplo 20141107152211/) para dentro da pasta /dspace-base/imports/. E então com o perfil de administrador acessar Administrador > Conteúdo > Importar metadados de diretórios. A interface de importação será carregada com duas abas (Figura 9), uma para importação e a outra para a relação de itens que apresentaram erros de importação ou exportação.

ImportaçãoDados.jpg
Interface de importação.

Após selecionar as pastas que serão importadas e a coleção destino, é possível selecionar as opções do tipo importação: “Teste”, “Envio para workflow” e “Importação efetiva”. As opções executam respectivamente as seguintes ações: 1) testa a ação de importação sem efetivá-la; 2) importa os itens e os coloca no fluxo de depósito (para revisão, se for o caso); 3) importa sem avaliar os fluxos de depósito, disponibilizando os itens para livre acesso e download.

ErrosImportação.png
Relação de itens com erros de importação/exportação.

Todas as falhas ocorridas no processo de importação ou exportação são direcionadas para uma área específica visível apenas para os administradores da BDTD local, onde é possível efetuar download dos arquivos e dos metadados do item (arquivo dublin_core.xml). Este processo permite a realização de uma triagem, onde os itens problemáticos podem ser tratados de forma particular.

Layout

Folha de estilo DSpace

Atualmente, o DSpace é dotado de duas interfaces gráficas: JSPUI, e XMLUI(concebida na versão 1.5 do DSpace).

A interface gráfica, JSPUI faz uso de JSPs (Java Server Page) para renderizar suas páginas. Isso é, os JSPs são executados no servidor (Tomcat, Jetty) resultando na entrega de um HTML para o usuário WEB. Até a versão 4.x do DSpace, as folhas de estilo eram empregadas de maneira precária na interface JSPUI: eram resultado de processamento de arquivos JSP, em outras palavras, ao invés de serem empregados arquivos do tipo “CSS” para registro do estilo, eram utilizadas páginas JSP, o que ocasionava em dificuldade de entendimento e desenvolvimento.

Ao passo em que a interface JSPUI apresentava essa característica, foi concebido um novo módulo de interface gráfica na versão 1.5: o XMLUI. Trata-se de uma interface que emprega tecnologias evoluídas para o processamento de folhas de estilos, a exemplo da utilização de XSLTs como conversores de XML para HTML e da clara divisão entre camada de serviço e interface gráfica. A interface XMLUI permite que o mantenedor de determinada instalação do DSpace alterne entre temas do repositório com pouco esforço e pouco (ou nenhum) impacto nas funcionalidades. A partir da versão 1.6, a interface XMLUI foi enriquecida com novos temas que representavam melhoria na experiência visual do repositório.

A partir do momento em que o módulo XMLUI fora fomentado por novos temas, a interface JSPUI permaneceu praticamente inerte: sua interface gráfica estava defasada com relação ao módulo XMLUI, quando a comparação era feita com outros sites da WEB o contraste se exponenciava. Contudo, na versão 4.0 o módulo JSPUI foi reformulado, recebendo tecnologias de ponta no que tange a folha de estilo e o XHTML. O HTML 5 foi aderido em conjunto com o CSS 3. Além disso, foi adotado o framework Bootstrap, que além de dispor de boa experiência visual também possui características responsivas: permite que um mesmo site seja bem visualizado tanto em dispositivos móveis quanto em PCs. Para conhecer mais detalhes sobre a inovação ocorrida no módulo JSPUI, a apresentação disposta no link a seguir pode ser utilizada como referência: http://pt.slideshare.net/DuraSpace/2514-dspace-user-interface-innovation-presentation-slides.

Dada a evolução da interface gráfica JSPUI no DSpace 4.0 e a facilidade de manutenção, essa foi a interface adotada como padrão no TEDE. Sabe-se que a interface XMLUI, apesar de ser rica em termos tecnológicos, representa grande curva de aprendizado no entendimento das tecnologias empregadas, fator que dificulta o processo de customização.

Interface gráfica do DSpace 1.8, com a interface JSPUI
InterfaceJSPUI1.8.png


Interface gráfica do DSpace 1.6, com a interface XMLUI e tema Mirage
InterfaceXMLUI1.6.png

Estratégia de modificação do Layout do TEDE

Estilo do TEDE, assim como as folhas de estilo foram modificadas conforme instruções de boas práticas de customização do DSpace. Isso é:

  • Os módulos de sobrescrita foram utilizados, a fim de evitar modificação no código fonte original. Em outras palavras, os arquivos de customização foram copiados do código original e modificados no módulos de sobrescrita, no caso da interface gráfica o módulo “jspui”:
TEDE/dspace/modules/jspui
  • As customizações de folha de estilo foram efetuadas no módulo de sobrescrita e foi feito uso do arquivo de sobreposição “nativo” da folha de estilo: o dspace-theme.css.

O arquivo pode ser encontrado na seguinte localização do módulo de sobrescrita:

TEDE/dspace/modules/jspui/src/main/webapp/static/css/bootstrap/dspace-theme.css

O arquivo supracitado é a última folha de estilo importada nos cabeçalhos HTML do DSpace (tag “header”). Isso indica que, todas instruções presentes no arquivo terão precedência com relação às declaradas anteriormente.

Dessa maneira, o TEDE se fez utilizar do tema de CSS nativo do Bootstrap (presente por padrão no DSpace) e teve as diferenças de folha de estilo com relação ao tema original registradas no referido arquivo. Por exemplo, o tema nativo do DSpace tem as cores “preta” e “azul” predominantes. Essas características foram sobrepostas nesse arquivo.

Tabela de cores
TabelaCores.png


Tela Inicial TEDE2
TelaInicial.png