cancel
Showing results for 
Search instead for 
Did you mean: 

Import ACP postgresql

dpardell
Champ on-the-rise
Champ on-the-rise

Hola,

Estoy intentando hacer un import de un fichero ACP a otro alfresco, la versión de los dos alfrescos es la 5.2, la sentencia que ejecuto des de /opt/alfresco-community/tomcat/webapps/alfresco/WEB-INF es la siguiente:

java -classpath `locate servlet-api.jar`:classes/alfresco/module:classes:lib/*:../../../lib/* org.alfresco.tools.Import -user user1 -pwd pwd1 -s workspace://SpacesStore -verbose -p /app:company_home/st:sites/cm:swsdp4/cm:documentLibrary -encoding UTF-8 -uuidBinding THROW_ON_COLLISION ACPexport.acp

y me da el siguiente error:

Caused by: org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'sessionFactory' defined in class path resource [alfresco/hibernate-context.xml]: Invocation of init method failed; nested exception is org.hibernate.HibernateException: Hibernate Dialect must be explicitly set
at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.initializeBean(AbstractAutowireCapableBeanFactory.java:1514)
at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.doCreateBean(AbstractAutowireCapableBeanFactory.java:521)
at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBean(AbstractAutowireCapableBeanFactory.java:458)
at org.springframework.beans.factory.support.AbstractBeanFactory$1.getObject(AbstractBeanFactory.java:293)
at org.springframework.beans.factory.support.DefaultSingletonBeanRegistry.getSingleton(DefaultSingletonBeanRegistry.java:223)
at org.springframework.beans.factory.support.AbstractBeanFactory.doGetBean(AbstractBeanFactory.java:290)
at org.springframework.beans.factory.support.AbstractBeanFactory.getBean(AbstractBeanFactory.java:191)
at org.springframework.beans.factory.support.BeanDefinitionValueResolver.resolveReference(BeanDefinitionValueResolver.java:328)
... 123 more
Caused by: org.hibernate.HibernateException: Hibernate Dialect must be explicitly set
at org.hibernate.dialect.DialectFactory.determineDialect(DialectFactory.java:67)
at org.hibernate.dialect.DialectFactory.buildDialect(DialectFactory.java:47)
at org.hibernate.cfg.SettingsFactory.determineDialect(SettingsFactory.java:426)
at org.hibernate.cfg.SettingsFactory.buildSettings(SettingsFactory.java:128)
at org.hibernate.cfg.Configuration.buildSettings(Configuration.java:2079)
at org.hibernate.cfg.Configuration.buildSessionFactory(Configuration.java:1304)
at org.springframework.orm.hibernate3.LocalSessionFactoryBean.newSessionFactory(LocalSessionFactoryBean.java:863)
at org.springframework.orm.hibernate3.LocalSessionFactoryBean.buildSessionFactory(LocalSessionFactoryBean.java:782)
at org.springframework.orm.hibernate3.AbstractSessionFactoryBean.afterPropertiesSet(AbstractSessionFactoryBean.java:188)
at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.invokeInitMethods(AbstractAutowireCapableBeanFactory.java:1573)
at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.initializeBean(AbstractAutowireCapableBeanFactory.java:1511)

si miro dentro del log me dice lo siguiente:

Caused by: java.lang.ClassNotFoundException: org.gjt.mm.mysql.Driver
at java.net.URLClassLoader.findClass(URLClassLoader.java:382)
at java.lang.ClassLoader.loadClass(ClassLoader.java:418)
at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:355)
at java.lang.ClassLoader.loadClass(ClassLoader.java:351)
at org.apache.commons.dbcp.BasicDataSource.createConnectionFactory(BasicDataSource.java:1420)

Ya veo que no encuentra el driver de mysql, lo que no entiendo es que yo estoy utilizando el alfresco con postgresql, tengo que modificar algun fichero del import para que utilize el postgresql (que ya le paso la librebria) o deberia añadir el jar del mysql??

Saludos

1 ACCEPTED ANSWER

Entonces igual te interesa este proyecto:

https://github.com/angelborroy/alfresco-uuid-importer

Para lanzar el export tienes que poner todas las librerías de Alfresco. Algo así como...

#!/bin/sh
/usr/java/jdk1.7.0_79/bin/java -XX:MaxPermSize=1512m -Xms5g -Xmx5g -server -classpath \
/opt/alfresco/tomcat/webapps/alfresco/WEB-INF/classes/alfresco/module:\
/opt/alfresco/tomcat/shared/classes:\
/opt/alfresco/tomcat/webapps/alfresco/WEB-INF/classes:\
/opt/alfresco/tomcat/webapps/alfresco/WEB-INF/lib/abdera-client-0.4.0-incubating.jar:\
...
/opt/alfresco/tomcat/lib/tomcat-i18n-ja.jar: \
org.alfresco.tools.Export -user admin -pwd admin -zip -verbose \
-dir /export -overwrite -store workspace://SpacesStore \
-p /app:company_home/cm:carpeta carpeta.acp
Hyland Developer Evangelist

View answer in original post

10 REPLIES 10

dpardell
Champ on-the-rise
Champ on-the-rise

Hola

Al final he modificado la instrucción para ejecutar el import y ya me ha funcionado, parece que no hace mucho caso del -uuidBinding pero si hay algun documento o carpeta con uuid repetido me peta, que es lo que queria.

La instrucción es la siguiente:

java -classpath lib/*:../../../shared/classes:../../../lib/* org.alfresco.tools.Import -user annexaEns1 -pwd semic6 -s workspace://SpacesStore -verbose -p /app:company_home/st:sites/cm:swsdp4/cm:documentLibrary -encoding UTF-8 -uuidBinding CREATE_NEW ACPexport.acp

yo ejecuto esta instrucción desde:

/opt/alfresco-community/tomcat/webapps/alfresco/WEB-INF

De esta forma me ha funcionado, muchas gracias por todo.