Dataverse:Handle
Índice
Introdução
Identificadores persistentes são tanto requerimentos quanto uma parte integral da plataforma Dataverse.
Por padrão e por conveniências de teste, o instalador configura um namespace de teste temporário no Doi através do EZID. Através deste é possível criar e publicar Dataverses e Datasets não sendo, entretanto, possível cita-los ou garantir sua preservação.
Para configurar propriamente um identificador para uma instalação de produção, devem ser adquiridos uma conta e um namespace através de um dos seguintes provedores de DOI ou HDL mediante a cobrança de taxação:
EZID (http://ezid.cdlib.org), DataCite (https://www.datacite.org), Handle.Net (https://www.handle.net).
Uma vez tendo a conta cadastrada e um namespace DOI ou Handle funcionando, as seguintes opções da JVM e da database devem ser configuradas:
Para doi:
JVM:
- doi.baseurlstring
- doi.username
- doi.password
Database:
- :DoiProvider
- :Protocol
- :Authority
- :Shoulder
- :IdentifierGenerationStyle (optional)
- :DataFilePIDFormat (optional)
Para Handle:
JVM
- dataverse.handlenet.admcredfile (chave privada de administração)
- dataverse.handlenet.admprivphrase (senha utilizada na encriptação da chave)
- dataverse.handlenet.index (index do handle, valor padrão é 300)
Database
- :Protocol
- :Authority
- :IdentifierGenerationStyle (optional)
- :DataFilePIDFormat (optional)
Configurando a Database
As opções da Database são configuradas através de requisições http através da linha de comando.
Para listar as configurações atuais, execute:
curl localhost:8080/api/admin/settings
Para editar alguma configuração, execute:
curl -X PUT -d (novo valor) localhost:8080/api/admin/settings/:(configuração)
Primeiro é necessario informar o Dataverse que será utilizado handle em vez do doi que vem por padrão. Para isso, edita-se o valor de :Protocol para hdl
curl -X PUT -d 'hdl' localhost:8080/api/admin/settings/:Protocol
Em seguida, é necessario informar o Dataverse o prefixo handle através da configuração :Authority
curl -X PUT -d '20.500.11959' localhost:8080/api/admin/settings/:Authority
Em seguida se faz necessario configurar o estilo de geração do identficardor, uma vez que o handle funciona com numeros e o dataverse vem configurado de modo a gerar uma string de caracteres aleatorios para o doi.
Primeiro, deve-se mudar a opção :IdentifierGenerationStyle com o comando:
curl -X PUT -d 'sequentialNumber' localhost:8080/api/admin/settings/:IdentifierGenerationStyle
Após, baixe o arquivo createsequence.sql no link http://guides.dataverse.org/en/latest/_downloads/createsequence.sql e através do usuario postgres execute-o na tabela dvndb, para gerar o contador da sequencia na database
sudo -u postgres -i wget http://guides.dataverse.org/en/latest/_downloads/createsequence.sql psql dvndb \i createsequence.sql
Alterando o prefixo do Handle no Dataverse
curl -X PUT -d "dt/" http://localhost:8080/api/admin/settings/:Shoulder
Configurando a JVM
Há dois modos de configurar as opções da JVM: via linha de comando através ou editando o arquivo domain.xml. A maior diferença entre um e outro é que editar o arquivo requer que o servidor seja reiniciado para que as alterações façam efeito. Por tanto, é preferivel configurar via linha de comando. Caso seja necessario, o arquivo domain.xml fica no seguinte caminho:
$PAYARA/glassfish/domains/domain1/config/domain.xml
Para acessar o aplicativo e configurar via linha de comando, é necessario estar no diretorio /bin do servidor.
cd /usr/local/glassfish4/glassfish/bin
Dentro do diretorio, é só executar o app asadmin passando os comandos como parametros.
Para listas ar configurações atuais execute:
$PAYARA/bin/asadmin list-jvm-options
Caso o sistema peça por senha, ela se encontra no arquivo local-password dentro da pasta glassfish/domains/domain1/config
Para alterar configurações ja definidas, se faz necessario deletar a versão atual e depois cria-la novamente atraves dos comandos delete-jvm-options e create-jvm-options.
Como o dataverse vem configurado para doi, inicialmente não há a necessidade de substituir(deletar e criar novamente) sendo possivel, somente criar as configurações do handle
$PAYARA/bin/asadmin create-jvm-options '-Ddataverse.handlenet.admcredfile=/hs/svr_1/admpriv.bin' $PAYARA/bin/asadmin create-jvm-options '-Ddataverse.handlenet.admprivphrase=SENHA DO ADMPRIV AQUI' $PAYARA/bin/asadmin create-jvm-options '-Ddataverse.handlenet.index=300'
O dataverse só consegue decriptar o arquivo admpriv.bin caso ele esteja usando a encriptação da versão 6 do handle. Para resolver erros devido a isso, basta re-encriptar o arquivo usando o app hdl-keyutil localizado na pasta bin/ do handle.net --- Documentação 2 --- Verificar as configurações curl localhost:8080/api/admin/settings Ativando o Handle curl -X PUT -d 'hdl' localhost:8080/api/admin/settings/:Protocol curl -X PUT -d '20.500.11959' localhost:8080/api/admin/settings/:Authority curl -X PUT -d 'sequentialNumber' localhost:8080/api/admin/settings/:IdentifierGenerationStyle Criando tabela no PGSQL sudo -u postgres -i wget http://guides.dataverse.org/en/latest/_downloads/createsequence.sql psql dvndb \i createsequence.sql Configurando o Glassfish cd /usr/local/glassfish4/glassfish/bin ./asadmin create-jvm-options '-Ddataverse.handlenet.admcredfile=/hs/svr_1/admpriv.bin' ./asadmin create-jvm-options '-Ddataverse.handlenet.admprivphrase=SENHA DO ADMPRIV AQUI' ./asadmin create-jvm-options '-Ddataverse.handlenet.index=300' Ver os paramentos setados ./asadmin list-jvm-options curl localhost:8080/api/admin/settings Alterando o prefixo do HAndle curl -X PUT -d "dt/" http://localhost:8080/api/admin/settings/:Shoulder
Alterando o prexifo FK2
defina um novo prefixo para os dados
curl -X PUT -d "CedapDados/" http://localhost:8080/api/admin/settings/:Shoulder
Documento 2
dspace.cfg
local.cfg
# Name of the site dspace.name = DSpace at RDP-CEDAP