Hi Juan Yes, both XML and JSON should be supported (if you are using a recent 2.23). If it's not working, please send me the payload.. and I will create a unit test for it (our new importer is fully tested, including many many tests for user imports)
-- Morten Olav Hansen Senior Engineer, DHIS 2 University of Oslo http://www.dhis2.org On Mon, Jun 6, 2016 at 11:54 AM, JM Alcantara <jmalcanta...@gmail.com> wrote: > Hi Morten > I hope you are well. > I'm using the system's interface with an XML I exported from another > instance, I give it a try via API and will let you know what I find out. > Best regards > JM > > On Mon, 6 Jun 2016, 04:37 Morten Olav Hansen, <mor...@dhis2.org> wrote: > >> Hi Juan >> >> Looks like you are using our old importer, could you try and send your >> payload to /api/23/metadata (if you are sending a single user, please wrap >> it in "user": []) >> >> -- >> Morten Olav Hansen >> Senior Engineer, DHIS 2 >> University of Oslo >> http://www.dhis2.org >> >> On Sat, Jun 4, 2016 at 6:12 PM, Juan Manuel Alcantara Acosta < >> jmalcanta...@gmail.com> wrote: >> >>> Hi Devs >>> >>> I hope everyone is enjoying a nice weekend. >>> >>> In v2.22 b 22057 I can’t import new user accounts, I’m including a copy >>> of the log. I tested this in play (v 2.23 b 22983) and the import >>> doesn’t finish, so I assume the same thing is happening. >>> >>> Best regards, >>> JM >>> >>> * INFO 2016-06-04 11:00:03,681 Building object-bridge maps took 3.21 >>> seconds. (DefaultObjectBridge.java [taskScheduler-5]) >>> * WARN 2016-06-04 11:00:03,682 Can not find getter for 'oAuth2Clients'. >>> (DefaultImportService.java [taskScheduler-5]) >>> * INFO 2016-06-04 11:00:03,682 [Level: INFO, category: METADATA_IMPORT, >>> time: Sat Jun 04 11:00:03 UTC 2016, message: Importing 1 Users] >>> (InMemoryNotifier.java [taskScheduler-5]) >>> * INFO 2016-06-04 11:00:03,744 'jmalcantara' *create >>> org.hisp.dhis.user.User, name: Aleck Dhliwayo, uid: AuQ7f7kpQNN* >>> (AuditLogUtil.java [taskScheduler-5]) >>> * INFO 2016-06-04 11:00:03,869 'jmalcantara' *update >>> org.hisp.dhis.user.User, name: Aleck Dhliwayo, uid: AuQ7f7kpQNN* >>> (AuditLogUtil.java [taskScheduler-5]) >>> * ERROR 2016-06-04 11:00:03,885 Unexpected error occurred in scheduled >>> task. (TaskUtils.java [taskScheduler-5]) >>> *org.hibernate.TransientObjectException: object references an unsaved >>> transient instance - save the transient instance before flushing: >>> org.hisp.dhis.user.User* >>> at >>> org.hibernate.engine.internal.ForeignKeys.getEntityIdentifierIfNotUnsaved(ForeignKeys.java:249) >>> at org.hibernate.type.EntityType.getIdentifier(EntityType.java:536) >>> at org.hibernate.type.ManyToOneType.isDirty(ManyToOneType.java:311) >>> at org.hibernate.type.ManyToOneType.isDirty(ManyToOneType.java:321) >>> at org.hibernate.type.TypeHelper.findDirty(TypeHelper.java:294) >>> at >>> org.hibernate.persister.entity.AbstractEntityPersister.findDirty(AbstractEntityPersister.java:4049) >>> at >>> org.hibernate.event.internal.DefaultFlushEntityEventListener.dirtyCheck(DefaultFlushEntityEventListener.java:537) >>> at >>> org.hibernate.event.internal.DefaultFlushEntityEventListener.isUpdateNecessary(DefaultFlushEntityEventListener.java:235) >>> at >>> org.hibernate.event.internal.DefaultFlushEntityEventListener.onFlushEntity(DefaultFlushEntityEventListener.java:164) >>> at >>> org.hibernate.event.internal.AbstractFlushingEventListener.flushEntities(AbstractFlushingEventListener.java:230) >>> at >>> org.hibernate.event.internal.AbstractFlushingEventListener.flushEverythingToExecutions(AbstractFlushingEventListener.java:100) >>> at >>> org.hibernate.event.internal.DefaultAutoFlushEventListener.onAutoFlush(DefaultAutoFlushEventListener.java:61) >>> at >>> org.hibernate.internal.SessionImpl.autoFlushIfRequired(SessionImpl.java:1166) >>> at org.hibernate.internal.SessionImpl.list(SessionImpl.java:1223) >>> at org.hibernate.internal.QueryImpl.list(QueryImpl.java:101) >>> at >>> org.hibernate.internal.AbstractQueryImpl.uniqueResult(AbstractQueryImpl.java:909) >>> at >>> org.hisp.dhis.user.hibernate.HibernateUserCredentialsStore.getUserCredentialsByUsername(HibernateUserCredentialsStore.java:48) >>> at >>> org.hisp.dhis.user.DefaultUserService.getUserCredentialsByUsername(DefaultUserService.java:567) >>> at sun.reflect.GeneratedMethodAccessor517.invoke(Unknown Source) >>> at >>> sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) >>> at java.lang.reflect.Method.invoke(Method.java:498) >>> at >>> org.springframework.aop.support.AopUtils.invokeJoinpointUsingReflection(AopUtils.java:317) >>> at >>> org.springframework.aop.framework.ReflectiveMethodInvocation.invokeJoinpoint(ReflectiveMethodInvocation.java:190) >>> at >>> org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:157) >>> at >>> org.springframework.transaction.interceptor.TransactionInterceptor$1.proceedWithInvocation(TransactionInterceptor.java:99) >>> at >>> org.springframework.transaction.interceptor.TransactionAspectSupport.invokeWithinTransaction(TransactionAspectSupport.java:281) >>> at >>> org.springframework.transaction.interceptor.TransactionInterceptor.invoke(TransactionInterceptor.java:96) >>> at >>> org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:179) >>> at >>> org.springframework.aop.interceptor.ExposeInvocationInterceptor.invoke(ExposeInvocationInterceptor.java:92) >>> at >>> org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:179) >>> at >>> org.springframework.aop.framework.JdkDynamicAopProxy.invoke(JdkDynamicAopProxy.java:207) >>> at com.sun.proxy.$Proxy64.getUserCredentialsByUsername(Unknown Source) >>> at >>> org.hisp.dhis.user.DefaultCurrentUserService.getCurrentUser(DefaultCurrentUserService.java:92) >>> at sun.reflect.GeneratedMethodAccessor482.invoke(Unknown Source) >>> at >>> sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) >>> at java.lang.reflect.Method.invoke(Method.java:498) >>> at >>> org.springframework.aop.support.AopUtils.invokeJoinpointUsingReflection(AopUtils.java:317) >>> at >>> org.springframework.aop.framework.ReflectiveMethodInvocation.invokeJoinpoint(ReflectiveMethodInvocation.java:190) >>> at >>> org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:157) >>> at >>> org.springframework.transaction.interceptor.TransactionInterceptor$1.proceedWithInvocation(TransactionInterceptor.java:99) >>> at >>> org.springframework.transaction.interceptor.TransactionAspectSupport.invokeWithinTransaction(TransactionAspectSupport.java:281) >>> at >>> org.springframework.transaction.interceptor.TransactionInterceptor.invoke(TransactionInterceptor.java:96) >>> at >>> org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:179) >>> at >>> org.springframework.aop.framework.JdkDynamicAopProxy.invoke(JdkDynamicAopProxy.java:207) >>> at com.sun.proxy.$Proxy47.getCurrentUser(Unknown Source) >>> at >>> org.hisp.dhis.hibernate.HibernateGenericStore.getSharingCriteria(HibernateGenericStore.java:207) >>> at >>> org.hisp.dhis.hibernate.HibernateGenericStore.getSharingCriteria(HibernateGenericStore.java:200) >>> at >>> org.hisp.dhis.hibernate.HibernateGenericStore.getSharingCriteria(HibernateGenericStore.java:275) >>> at >>> org.hisp.dhis.hibernate.HibernateGenericStore.getSharingObject(HibernateGenericStore.java:307) >>> at >>> org.hisp.dhis.common.hibernate.HibernateIdentifiableObjectStore.getByUid(HibernateIdentifiableObjectStore.java:107) >>> at >>> org.hisp.dhis.common.hibernate.HibernateIdentifiableObjectStore.getByUid(HibernateIdentifiableObjectStore.java:57) >>> at >>> org.hisp.dhis.common.DefaultIdentifiableObjectManager.get(DefaultIdentifiableObjectManager.java:189) >>> at sun.reflect.GeneratedMethodAccessor1701.invoke(Unknown Source) >>> at >>> sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) >>> at java.lang.reflect.Method.invoke(Method.java:498) >>> at >>> org.springframework.aop.support.AopUtils.invokeJoinpointUsingReflection(AopUtils.java:317) >>> at >>> org.springframework.aop.framework.ReflectiveMethodInvocation.invokeJoinpoint(ReflectiveMethodInvocation.java:190) >>> at >>> org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:157) >>> at >>> org.springframework.transaction.interceptor.TransactionInterceptor$1.proceedWithInvocation(TransactionInterceptor.java:99) >>> at >>> org.springframework.transaction.interceptor.TransactionAspectSupport.invokeWithinTransaction(TransactionAspectSupport.java:281) >>> at >>> org.springframework.transaction.interceptor.TransactionInterceptor.invoke(TransactionInterceptor.java:96) >>> at >>> org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:179) >>> at >>> org.springframework.aop.interceptor.ExposeInvocationInterceptor.invoke(ExposeInvocationInterceptor.java:92) >>> at >>> org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:179) >>> at >>> org.springframework.aop.framework.JdkDynamicAopProxy.invoke(JdkDynamicAopProxy.java:207) >>> at com.sun.proxy.$Proxy105.get(Unknown Source) >>> at >>> org.hisp.dhis.dxf2.metadata.DefaultObjectBridge.getUidMatch(DefaultObjectBridge.java:722) >>> at >>> org.hisp.dhis.dxf2.metadata.DefaultObjectBridge.findMatches(DefaultObjectBridge.java:526) >>> at >>> org.hisp.dhis.dxf2.metadata.DefaultObjectBridge.getObject(DefaultObjectBridge.java:384) >>> at >>> org.hisp.dhis.dxf2.metadata.importers.DefaultIdentifiableObjectImporter.findObjectByReference(DefaultIdentifiableObjectImporter.java:760) >>> at >>> org.hisp.dhis.dxf2.metadata.importers.DefaultIdentifiableObjectImporter.reattachCollectionFields(DefaultIdentifiableObjectImporter.java:847) >>> at >>> org.hisp.dhis.dxf2.metadata.importers.DefaultIdentifiableObjectImporter.newObject(DefaultIdentifiableObjectImporter.java:366) >>> at >>> org.hisp.dhis.dxf2.metadata.importers.DefaultIdentifiableObjectImporter.startImport(DefaultIdentifiableObjectImporter.java:552) >>> at >>> org.hisp.dhis.dxf2.metadata.importers.DefaultIdentifiableObjectImporter.importObjectLocal(DefaultIdentifiableObjectImporter.java:538) >>> at >>> org.hisp.dhis.dxf2.metadata.importers.DefaultIdentifiableObjectImporter.importObjects(DefaultIdentifiableObjectImporter.java:192) >>> at >>> org.hisp.dhis.dxf2.metadata.DefaultImportService.doImport(DefaultImportService.java:260) >>> at >>> org.hisp.dhis.dxf2.metadata.DefaultImportService.importMetaData(DefaultImportService.java:176) >>> at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) >>> at >>> sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) >>> at >>> sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) >>> at java.lang.reflect.Method.invoke(Method.java:498) >>> at >>> org.springframework.aop.support.AopUtils.invokeJoinpointUsingReflection(AopUtils.java:317) >>> at >>> org.springframework.aop.framework.ReflectiveMethodInvocation.invokeJoinpoint(ReflectiveMethodInvocation.java:190) >>> at >>> org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:157) >>> at >>> org.springframework.transaction.interceptor.TransactionInterceptor$1.proceedWithInvocation(TransactionInterceptor.java:99) >>> at >>> org.springframework.transaction.interceptor.TransactionAspectSupport.invokeWithinTransaction(TransactionAspectSupport.java:281) >>> at >>> org.springframework.transaction.interceptor.TransactionInterceptor.invoke(TransactionInterceptor.java:96) >>> at >>> org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:179) >>> at >>> org.springframework.aop.framework.JdkDynamicAopProxy.invoke(JdkDynamicAopProxy.java:207) >>> at com.sun.proxy.$Proxy232.importMetaData(Unknown Source) >>> at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) >>> at >>> sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) >>> at >>> sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) >>> at java.lang.reflect.Method.invoke(Method.java:498) >>> at >>> org.springframework.aop.support.AopUtils.invokeJoinpointUsingReflection(AopUtils.java:317) >>> at >>> org.springframework.aop.framework.ReflectiveMethodInvocation.invokeJoinpoint(ReflectiveMethodInvocation.java:190) >>> at >>> org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:157) >>> at >>> org.springframework.aop.support.DelegatingIntroductionInterceptor.doProceed(DelegatingIntroductionInterceptor.java:133) >>> at >>> org.springframework.aop.support.DelegatingIntroductionInterceptor.invoke(DelegatingIntroductionInterceptor.java:121) >>> at >>> org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:179) >>> at >>> org.springframework.aop.framework.JdkDynamicAopProxy.invoke(JdkDynamicAopProxy.java:207) >>> at com.sun.proxy.$Proxy182.importMetaData(Unknown Source) >>> at >>> org.hisp.dhis.importexport.action.util.ImportMetaDataTask.call(ImportMetaDataTask.java:99) >>> at >>> org.hisp.dhis.security.SecurityContextRunnable.run(SecurityContextRunnable.java:57) >>> at >>> org.springframework.scheduling.support.DelegatingErrorHandlingRunnable.run(DelegatingErrorHandlingRunnable.java:54) >>> at >>> java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:511) >>> at java.util.concurrent.FutureTask.run(FutureTask.java:266) >>> at >>> java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.access$201(ScheduledThreadPoolExecutor.java:180) >>> at >>> java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.run(ScheduledThreadPoolExecutor.java:293) >>> at >>> java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142) >>> at >>> java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617) >>> at java.lang.Thread.run(Thread.java:745) >>> >>> _______________________________________________ >>> Mailing list: https://launchpad.net/~dhis2-devs >>> Post to : dhis2-devs@lists.launchpad.net >>> Unsubscribe : https://launchpad.net/~dhis2-devs >>> More help : https://help.launchpad.net/ListHelp >>> >>> >>
_______________________________________________ Mailing list: https://launchpad.net/~dhis2-devs Post to : dhis2-devs@lists.launchpad.net Unsubscribe : https://launchpad.net/~dhis2-devs More help : https://help.launchpad.net/ListHelp