Configuración JCR-RMI de Alfresco (Tomcat)
Introducción
Configuración necesaria en la instalación de Alfresco para permitir el acceso remoto mediante JCR-RMI a su repositorio.
Documentos de referencia
http://wiki.alfresco.com/wiki/Configuring_JCR-RMI_Extension_Runtime_Parameters
http://forums.alfresco.com/en/viewtopic.php?f=28&t=16420#p57106
Información técnica
nohup rmiregistry &
Nota: ejecuta el rmi registry, configurado en /etc/init.d/rmiregistry [ver anexo]
chmod a+rwx /etc/init.d/rmiregistry
activarlo en yast (Sistema -> Servicios del sistema (niveles de ejecución))
port TCP 1099 (jcr-rmi)
alfresco necesita que rmiregistry esté "ANTES" activo. Se ha configurado en /etc/init.d/tomcat6 [ver anexo]
Instrucciones
1a etapa : Instalación de la extensión alfresco-rmi
Descargar rmi-extension (extension-jcr-rmi-1.0.0-src.zip) de http://forge.alfresco.com/frs/download. ... .0-src.zip.
Descomprimir la extensión « rmi » zippée vers un dossier temporaire.
-Copiar el fichero extension-jcr-rmi /lib/jcr-rmi-1-impl-classes.jar al directorio:
/srv/tomcat6/webapps/alfresco/WEB-INF/lib/
</opt/Alfresco/tomcat/webapps/alfresco/WEB-INF/lib> //si no se ha usado el paquete edit@
-Copiar el fichero extension-jcr-rmi/build/dist/extension-jcr-rmi.jar al directorio:
/srv/tomcat6/webapps/alfresco/WEB-INF/lib/
</opt/Alfresco/tomcat/webapps/alfresco/WEB-INF/lib> //si no se ha usado el paquete edit@
-Copiar extension-jcr-rmi/source/web/jsp/jcrRmiTest.jsp al directorio:
/srv/tomcat6/webapps/alfresco/jsp/
<C:\Alfresco\tomcat\webapps\alfresco\jsp> //si no se ha usado el paquete edit@
Cambiar en jcrRmiTest.jsp:
out.write("logging in as admin ibermatica to default workspace</br>");
vJcrSession = vJcrRepository.login(new SimpleCredentials("admin", "ibermatica".toCharArray()));
-Copiar el contenido del directorio extension-jcr-rmi/config/alfresco/extension al directorio:
/srv/tomcat6/webapps/alfresco/WEB-INF/lib/
</opt/Alfresco/tomcat/webapps/alfresco/WEB-INF/lib> //si no se ha usado el paquete edit@
Nota: El contenido de dicho directorio es
messages/jcr-rmi-messages.properties
jcr-rmi-context.xml
jcr-rmi.properties
jcr-rmi-web-client-config-properties.xml
2a etapa : Instalación de la extensión extension-jcr-thread-bound
-Descargar "extension-jcr-thread-bound-1.1" (extension-jcr-thread-bound-1.1.jar) de:
http://forge.alfresco.com/frs/?group_id=21&release_id=298
-Copiar le jar extension-jcr-thread-bound-1.1.jar al directorio:
/srv/tomcat6/webapps/alfresco/WEB-INF/lib/
</opt/Alfresco/tomcat/webapps/alfresco/WEB-INF/lib>
-Descargar "extension-jcr-thread-bound" (extension-jcr-thread-bound.zip) à partir du lien suivant:
http://forge.alfresco.com/frs/download. ... -bound.zip.
-Décompresser l’extension « jcr-thread-bound » zippée vers un directorio temporal.
-Copiar el fichero extension-jcr-thread-bound/config/alfresco/extension/thread-bound-jcr-context.xml al directorio:
/srv/tomcat6/webapps/alfresco/WEB-INF/classes/alfresco/extension/
</opt/Alfresco/tomcat/shared/classes/alfresco/extension> //si no se ha usado el paquete edit@
3a etapa : Modificación de los ficheros
-Eliminar / faire en commentaire la ligne suivante : (<import resource="classpath:alfresco/jcr-context.xml"/>) du fichier
/srv/tomcat6/webapps/alfresco/WEB-INF/classes/alfresco/extension/jcr-rmi-context.xml
/opt/Alfresco/tomcat/webapps/alfresco/WEB-INF/classes/alfresco/extension/jcr-rmi-context.xml //si no se ha usado el paquete edit@
Code: Select all
<beans>
<!-- import resource="classpath:alfresco/jcr-context.xml" /-->
...
</beans>
-Modificar el fichero
/srv/tomcat6/webapps/alfresco/WEB-INF/classes/alfresco/extension/jcr-rmi-context.xml
/opt/Alfresco/tomcat/webapps/alfresco/WEB-INF/classes/alfresco/extension/jcr-rmi-context.xml //si no se ha usado el paquete edit@
pour faire pointer le bean javaContentRepositoryRmiBinding vers threadBoundJcrRepository
Code: Select all
...
<property name="jcrRepository">
<ref bean="threadBoundJcrRepository"/>
</property>
...
-Modificar el servername y port dans el fichero
/srv/tomcat6/webapps/alfresco/WEB-INF/classes/alfresco/extension/jcr-rmi.properties
/opt/Alfresco/tomcat/webapps/alfresco/WEB-INF/classes/alfresco/extension/jcr-rmi.properties
para configurer celui par défaut d'Alfresco
Code: Select all
# ###############
# RMI JCR Configuration #
# ###############
rmi.jcr.binding.servername=alfrescoedita.ibit.org
rmi.jcr.binding.port=1099
rmi.jcr.binding.name=javaContentRepository
rmi.jcr.resources.path=/alfresco/extension/messages/jcr-rmi-messages.properties
4a etapa: Integración de las bibliotecas (jar)
-Descargar el fichero JAR jcr-1.0.jar à partir de : http://svn.nuxeo.org/trac/nuxeo/browser/maven-repo/jcr-1.0.jar?rev=7891&format=raw puis copiar el fichero al directorio:
/srv/tomcat6/webapps/alfresco/WEB-INF/lib/
</opt/Alfresco/tomcat/webapps/alfresco/WEB-INF/lib/> //si no se ha usado el paquete edit@
-Descargar el fichero JAR jackrabbit-jcr-rmi-1.4.1.jar à partir http://jackrabbit.apache.org/downloads.cgi (archive download site -> binaries) y copier jackrabbit-jcr-rmi-1.4.1.jar al directorio:
/srv/tomcat6/webapps/alfresco/WEB-INF/lib/
</opt/Alfresco/tomcat/webapps/alfresco/WEB-INF/lib/> //si no se ha usado el paquete edit@
-Ahora, se necesita "org.apache.jackrabbit.api.XASession". Se puede obtener mediante una de las siguientes opciones:
Opción a:
Descargar jackrabbit-api-1.4.jar de http://jackrabbit.apache.org/downloads.html (archive download site -> binaries)
y copiarlo a:
/srv/tomcat6/webapps/alfresco/WEB-INF/lib/
</opt/Alfresco/tomcat/webapps/alfresco/WEB-INF/lib/> //si no se ha usado el paquete edit@
Opción b:
Descargar jackrabbit-jca-1.6.0.jar de http://jackrabbit.apache.org/downloads.html
Extraer del mismo jackrabbit-api-1.6.0.jar y copiarlo a:
/srv/tomcat6/webapps/alfresco/WEB-INF/lib/
</opt/Alfresco/tomcat/webapps/alfresco/WEB-INF/lib/> //si no se ha usado el paquete edit@
5a etapa : Prueba de JCR
-Après la configuration de rmiserver, on peut tester le JCR-RMI à partir de lien suivant : http://localhost:8080/alfresco/faces/jsp/jcrRmiTest.jsp
-------------------------
Configuración de un custom resource en GlassFish (en que se ejecuta el cliente remoto que ataca a alfresco mediante jcr-rmi)
Resources->JNDI->Custom Resources
JNDI Name:jcr/Alfresco
Resource Type:javax.jcr.Repository
Factory Class:org.apache.jackrabbit.rmi.client.ClientRepositoryFactory
Description:Repositorio remoto de Alfresco
Status: Enabled
Properties:
url=rmi://localhost:1099/javaContentRepository //javaContentRepository és el nom amb el que Alfresco es registra a RMI