Nuxeo EP com MySQL no Ubuntu LTS Server Hardy 8.04

O Nuxeo EP é um software de gerenciamento de conteúdo - ECM (Entreprise Content Management) multiplataforma (Windows/Unix) de código aberto (open source), baseado na arquitetura orientada a serviços e tecnologias Java EE. A motivação para este artigo é o compartilhamento do conhecimento e a documentação de sua instalação em português.

[ Hits: 26.660 ]

Por: Rogerio J. Gentil em 18/02/2009


Instalação do Nuxeo EP



Pode-se obter o Nuxeo EP, versão 5.1.6, acesse os endereços www.nuxeo.com/en ou www.nuxeo.org ou efetue o download da aplicação por linha de comando como em:

# wget http://www.nuxeo.org/static/NuxeoEP/nuxeo-ep-5.1.6.GA-2.tar.gz

Assim que o download do arquivo for finalizado, descompacte-o com:

# gunzip nuxeo-ep-5.1.6.GA-2.tar.gz
# tar xf nuxeo-ep-5.1.6.GA-2.tar


Ou de uma única vez com o comando:

# tar -zxvf nuxeo-ep-5.1.6.GA-2.tar.gz

O sistema já esta pronto para rodar com as configurações básicas, utilizando o HSQL [3], um servidor de banco de dados open source embutido escrito inteiramente em Java. Para utilizá-lo, basta rodar o script de inicialização localizado em /nuxeo-ep-5.1.6.GA/bin:

# ./run.sh

e acessar através do seu navegador o endereço:

http://localhost:8080/nuxeo

Configuração do Nuxeo EP com MySQL

Configurar o Nuxeo EP com um SGBDR (Sistema de Gerenciamento de Banco de Dados Real) traz algumas vantagens, bastando apenas configurar o servidor para a utilização dos serviços e o armazenamento. O Nuxeo gerencia vários tipos de dados: documentos, relações, usuários, grupos etc. Cada tipo de dado tem seu próprio local de armazenamento e pode ser configurado separadamente [4].

A fim de definir o MySQL como repositório back-end, deve-se primeiramente instalar o driver JDBC (Java Database Connectivity) chamado MySQL Connector/J [5], que fornece conectividade para aplicações clientes desenvolvidas em programação Java. Para isso, é necessário efetuar o download do MySQL Conector/J 5.1 [6], como no comando:

# wget http://dev.mysql.com/get/Downloads/Connector-J/mysql-connector-java-5.1.7.tar.gz/from/http://mysql.cce.usp.br/

Este download é feito do mirror HTTP Brazil [Universidade de São Paulo - CCE]. Assim que o download do arquivo for finalizado, descompacte-o com:

# gunzip mysql-connector-java-5.1.7.tar.gz
# tar mysql-connector-java-5.1.7.tar


Ou de uma única vez com o comando:

# tar -zxvf mysql-connector-java-5.1.7.tar.gz

Acesse o diretório descompactado. O driver de nome mysql-connector-java-5.1.7-bin.jar deve ser instalado em $JBOSS_HOME/server/default/lib [7], onde $JBOSS_HOME é o diretório onde está instalado o programa - /opt/nuxeo-ep-5.1.6.GA. Para instalá-lo, basta copiá-lo para o diretório mencionado.

Para configurar a fonte de dados, copie o arquivo $JBOSS_HOME/docs/examples/jca/mysql-ds.xml para $JBOSS_HOME/server/default/deploy. Edite-o substituindo MySqlDS em <jndi-name>MySqlDS</jndi-name> pelo nome da sua base no MySQL, alterando as configurações de conexão em <connection-url>jdbc:mysql://mysql-hostname:3306/jbossdb</connection-url> e colocando o nome do usuário e senha para acesso a base.

Exemplo:

<datasources>
  <local-tx-datasource>
    <jndi-name>nuxeo</jndi-name>
    <connection-url>jdbc:mysql://localhost:3306/nuxeo?relaxAutoCommit=true</connection-url>
    <driver-class>com.mysql.jdbc.Driver</driver-class>
    <user-name>nome_do_usuario</user-name>
    <password>senha_do_usuario</password>
    <exception-sorter-class-name>org.jboss.resource.adapter.jdbc.vendor.MySQLExceptionSorter</exception-sorter-class-name>
    <metadata>
        <type-mapping>mySQL</type-mapping>
    </metadata>
  </local-tx-datasource>
</datasources>

Após configurar a conexão do MySQL é necessário configurar o Nuxeo Core, usando o Jackrabbit como back-end, para armazenar os dados do repositório no MySQL.

Edite o arquivo $JBOSS_HOME/server/default/deploy/nuxeo.ear/config/default-repository-config.xml alterando as duas seções PersistenceManager que definem as várias configurações de conexão com o banco de dados. Para Jackrabbit [8], há um persistence manager especifico para MySQL. Deve-se usar o parâmetro org.apache.jackrabbit.core.persistence.bundle.MySqlPersistenceManager.

Exemplo:

<PersistenceManager class="org.apache.jackrabbit.core.persistence.bundle.MySqlPersistenceManager">
  <param name="driver" value="com.mysql.jdbc.Driver"/>
  <param name="url" value="jdbc:mysql://localhost/nuxeo"/>
  <param name="user" value="nome_do_usuario"/>
  <param name="password" value="senha_do_usuario"/>
  <param name="schema" value="mysql"/>
  <param name="schemaObjectPrefix" value="jcr_${wsp.name}_"/>
  <param name="externalBLOBs" value="true"/>
</PersistenceManager>
(...)
<!-- Versioning configuration. -->
(...)
<PersistenceManager class="org.apache.jackrabbit.core.persistence.bundle.MySqlPersistenceManager">
  <param name="driver" value="com.mysql.jdbc.Driver"/>
  <param name="url" value="jdbc:mysql://localhost/nuxeo"/>
  <param name="user" value="nome_do_usuario"/>
  <param name="password" value="senha_do_usuario"/>
  <param name="schema" value="mysql"/>
  <param name="schemaObjectPrefix" value="jcr_ver_"/>
  <param name="externalBLOBs" value="true"/>
</PersistenceManager>

Cada serviço pode usar uma fonte dados dedicada para definir a conexão da base de dados. Para modificar a definição da fonte de dados altere o arquivo $JBOSS_HOME/server/default/deploy/nuxeo.ear/datasources/unified-nuxeo-ds.xml.

Exemplo para conexão com o MySQL:

<!-- Configuration for MySQL -->
    <local-tx-datasource>
        <jndi-name>NuxeoDS</jndi-name>
        <connection-url>jdbc:mysql://localhost:3306/nuxeo</connection-url>
        <driver-class>org.mysql.jdbc.Driver</driver-class>
        <user-name>nome_do_usuario</user-name>
        <password>senha_do_usuario</password>
        <check-valid-connection-sql>select count(*) from dual</check-valid-connection-sql>
    </local-tx-datasource>

Por fim o serviço de relação usa uma fonte de dados para definir um armazém de dados. Modificar a base não é o suficiente, você ainda precisa informar ao Jena qual dialeto é usado, pois isso não é autodetectado. Para isso edite o arquivo sql.properties em $JBOSS_HOME/server/default/deploy/nuxeo.ear/config/ e altere a definição da propriedade org.nuxeo.ecm.sql.jena.databaseType para MySQL.

Página anterior     Próxima página

Páginas do artigo
   1. Introdução
   2. Instalação do Nuxeo EP
   5. Conclusão e referências
Outros artigos deste autor

Java no Ubuntu 12.04 - Instalação à moda antiga

Atualizando o navegador Firefox para a versão 4.0

Leitura recomendada

Um tour pelos players de vídeo para Linux

Paravirtualização com XEN

Zabbix 2.2 no CentOS 6 via repositório EPEL - Instalação e configuração

Kshutdown e suas funções

O comando LS de A a Z

  
Comentários
[1] Comentário enviado por leandro.bernardo em 23/06/2011 - 13:34h

Amigo, não estou conseguindo definir usuário e senha partindo pela configuração básica.


Tem idéia do que pode ser?!

[2] Comentário enviado por rogerio_gentil em 27/06/2011 - 09:01h

Olá @leznx.

O acesso padrão do sistema na versão 5.1.6 é:
- usuário: Administrador (tente com 'A' maiúsculo mesmo)
- senha: administrador

Caso você não tenha configurado o Nuxeo com outro SGBD, é para funcionar.

Que versão do Nuxeo você está utilizando?


Contribuir com comentário




Patrocínio

Site hospedado pelo provedor RedeHost.
Linux banner

Destaques

Artigos

Dicas

Tópicos

Top 10 do mês

Scripts