Buongiorno.
Sto utilizzando il Wizard Connector per alimentare il database di Cmdbuild con una sorgente dati esterna.
Ho 2 tabelle che sono collegate tra di loro da un campo di tipo Reference in Cmdbuild e nella tabella della sorgente esterna in questo campo di collegamento metto il codice della tabella referenziata (con lo stesso meccanismo usato per importare i dati nella sezione "Importa Dati da CSV").
Solo che nel Wizard Connector il campo non viene sincronizzato ed il job mi dà l'errore:
RROR 2019-01-25 10:23:00 [org.cmdbuild.services.sync.logging] error creating entry
java.lang.RuntimeException: Conversion error
at org.cmdbuild.logic.taskmanager.task.connector.DefaultAttributeValueAdapter$1.visit(DefaultAttributeValueAdapter.java:104)
at org.cmdbuild.dao.entrytype.attributetype.ReferenceAttributeType.accept(ReferenceAttributeType.java:48)
at org.cmdbuild.logic.taskmanager.task.connector.DefaultAttributeValueAdapter$1.adapt(DefaultAttributeValueAdapter.java:72)
at org.cmdbuild.logic.taskmanager.task.connector.DefaultAttributeValueAdapter.toInternal(DefaultAttributeValueAdapter.java:129)
at org.cmdbuild.services.sync.store.internal.InternalStore$Create.visit(InternalStore.java:163)
at org.cmdbuild.services.sync.store.ClassType.accept(ClassType.java:66)
at org.cmdbuild.services.sync.store.internal.InternalStore$Create.execute(InternalStore.java:153)
at org.cmdbuild.services.sync.store.internal.InternalStore$Create.execute(InternalStore.java:1)
at org.cmdbuild.services.sync.store.internal.InternalStore.execute(InternalStore.java:359)
at org.cmdbuild.services.sync.store.internal.InternalStore.create(InternalStore.java:319)
at org.cmdbuild.services.sync.store.ForwardingStore.create(ForwardingStore.java:18)
at org.cmdbuild.services.sync.store.Stores$LoggingStore.create(Stores.java:24)
at org.cmdbuild.services.sync.store.ForwardingStore.create(ForwardingStore.java:18)
at org.cmdbuild.logic.taskmanager.task.connector.PermissionBasedStore.create(PermissionBasedStore.java:40)
at org.cmdbuild.services.sync.store.StoreSynchronizer.doSync(StoreSynchronizer.java:131)
at org.cmdbuild.services.sync.store.StoreSynchronizer.sync(StoreSynchronizer.java:88)
at org.cmdbuild.logic.taskmanager.task.connector.ConnectorTaskCommandWrapper.execute(ConnectorTaskCommandWrapper.java:87)
at org.cmdbuild.scheduler.command.ForwardingCommand.execute(ForwardingCommand.java:18)
at org.cmdbuild.scheduler.command.Commands$ComposeOnExeption.execute(Commands.java:73)
at org.cmdbuild.scheduler.command.BuildableCommandBasedJob.execute(BuildableCommandBasedJob.java:72)
at org.cmdbuild.scheduler.ForwardingJob.execute(ForwardingJob.java:24)
at org.cmdbuild.logic.taskmanager.scheduler.DefaultSchedulerFacade$JobWithCallback.execute(DefaultSchedulerFacade.java:65)
at org.cmdbuild.scheduler.ForwardingJob.execute(ForwardingJob.java:24)
at org.cmdbuild.logic.taskmanager.scheduler.DefaultSchedulerFacade$JobWithCallback.execute(DefaultSchedulerFacade.java:65)
at org.cmdbuild.logic.taskmanager.scheduler.DefaultSchedulerFacade$SuppressedExceptionJob.execute(DefaultSchedulerFacade.java:38)
at org.cmdbuild.scheduler.quartz.QuartzJob.execute(QuartzJob.java:101)
at org.quartz.core.JobRunShell.run(JobRunShell.java:202)
at org.quartz.simpl.SimpleThreadPool$WorkerThread.run(SimpleThreadPool.java:573)
Riporto un esempio delle 2 tabelle.
Tabella DOMINIO con le colonne Code e Description.
Tabella VAL_DOMINIO con le colonne Code, Description e DOM_CD che in CMDBUILD è di tipo Reference mentre nell'altro database è di tipo String e riporta il Code del Dominio referenziato.
Come posso sincronizzare queste 2 tabelle?
Grazie.