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
Solved! Go to Solution.
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
Creo que este método es más sencillo.
http://formtektips.blogspot.com/2016/11/import-and-export-of-alfresco-acp-files.html
Te evitará lidiar con el classpath requerido para ejecutar la orden desde línea de comandos correctamente.
Hola,
Muchas gracias por tu respuesta, pero ya probé de hacerlo de esta forma. La importación funcionó correctament, pero no entrontré la forma de indicar el uuidBinding, ya que a mí me interesa que este campo sea THROW_ON_COLLISION.
Me podrías decir si de esta forma le puedo indicar el uuidBinding al hacer el import??
Saludos y gracias.
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
Hola,
Ok muchas gracias, lo pruebo y te digo algo.
Saludos
Hola,
¿En algún sitio tienes explicado cómo hacer la llamada al import, o sería hacer la misma que tengo en el primer post?
¿si es así el parámetro para definir la estrategia con los uuid's sería el uuidBinding o deberia pasar otro parámetro?
Saludos
Hola,
He probado haciendo esta llamada:
java -classpath classes/alfresco/module:classes: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 THROW_ON_COLLISION ACPexport.acp
la cosa parece que ha mejorado un poco, ahora parece que se conecta a la BBDD, hace la autenticación y se queja de lo siguiente:
The following error has occurred:Invalid bean definition with name 'webscript.org.alfresco.slingshot.datalists.list.get' defined in file [/opt/alfresco-community/tomcat/webapps/alfresco/WEB-INF/classes/alfresco/module/alfresco-share-services/module-context.xml]: Could not resolve parent bean definition 'declarativeSpreadsheetWebScript'; nested exception is org.springframework.beans.factory.NoSuchBeanDefinitionException: No bean named 'declarativeSpreadsheetWebScript' is defined
org.springframework.beans.factory.BeanDefinitionStoreException: Invalid bean definition with name 'webscript.org.alfresco.slingshot.datalists.list.get' defined in file [/opt/alfresco-community/tomcat/webapps/alfresco/WEB-INF/classes/alfresco/module/alfresco-share-services/module-context.xml]: Could not resolve parent bean definition 'declarativeSpreadsheetWebScript'; nested exception is org.springframework.beans.factory.NoSuchBeanDefinitionException: No bean named 'declarativeSpreadsheetWebScript' is defined
at org.springframework.beans.factory.support.AbstractBeanFactory.getMergedBeanDefinition(AbstractBeanFactory.java:1180)
at org.springframework.beans.factory.support.AbstractBeanFactory.getMergedBeanDefinition(AbstractBeanFactory.java:1125)
at org.springframework.beans.factory.support.AbstractBeanFactory.getMergedLocalBeanDefinition(AbstractBeanFactory.java:1111)
at org.springframework.beans.factory.support.DefaultListableBeanFactory.preInstantiateSingletons(DefaultListableBeanFactory.java:615)
at org.springframework.context.support.AbstractApplicationContext.finishBeanFactoryInitialization(AbstractApplicationContext.java:938)
at org.springframework.context.support.AbstractApplicationContext.refresh(AbstractApplicationContext.java:479)
at org.springframework.context.support.ClassPathXmlApplicationContext.<init>(ClassPathXmlApplicationContext.java:139)
at org.springframework.context.support.ClassPathXmlApplicationContext.<init>(ClassPathXmlApplicationContext.java:93)
at org.alfresco.util.BaseApplicationContextHelper.getApplicationContext(BaseApplicationContextHelper.java:78)
at org.alfresco.util.ApplicationContextHelper.getApplicationContext(ApplicationContextHelper.java:53)
at org.alfresco.tools.Tool.initialiseRepository(Tool.java:269)
at org.alfresco.tools.Tool.start(Tool.java:229)
at org.alfresco.tools.Import.main(Import.java:68)
Caused by: org.springframework.beans.factory.NoSuchBeanDefinitionException: No bean named 'declarativeSpreadsheetWebScript' is defined
at org.springframework.beans.factory.support.DefaultListableBeanFactory.getBeanDefinition(DefaultListableBeanFactory.java:575)
at org.springframework.beans.factory.support.AbstractBeanFactory.getMergedLocalBeanDefinition(AbstractBeanFactory.java:1111)
at org.springframework.beans.factory.support.AbstractBeanFactory.getMergedBeanDefinition(AbstractBeanFactory.java:892)
at org.springframework.beans.factory.support.AbstractBeanFactory.getMergedBeanDefinition(AbstractBeanFactory.java:1166)
... 12 more
Parece que falta declarar el siguiente bean de spring 'declarativeSpreadsheetWebScript', ¿sabes donde debería crearlo y que debería llevar este bean?
Saludos
Ese bean se define dentro del fichero "web-scripts-application-context.xml". La ubicación puede cambiar en función de la versión de Alfresco que utilices.
Ok, muchas gracias.
Hola,
He buscado este fichero y no lo tengo, yo estoy trabajando con alfresco community edition 5.2, ¿puede ser que con la community no se pueda utilizar?
Saludos
Discussions about Alfresco Content Services and Alfresco Process Services in Spanish
Related:
By using this site, you are agreeing to allow us to collect and use cookies as outlined in Alfresco’s Cookie Statement and Terms of Use (and you have a legitimate interest in Alfresco and our products, authorizing us to contact you in such methods). If you are not ok with these terms, please do not use this website.