I tried to import all issues from a Redmine installation. The installation uses a group to assign issues to that group. The import process failed with the following error:
2013-01-08 12:10:01,180 ERROR - Unexpected failure occurred. Importer will stop immediately. Data maybe in an unstable state com.atlassian.jira.plugins.importer.redmine.RedmineRemoteException: Unexpected exception while importing from redmine at com.atlassian.jira.plugins.importer.redmine.RedmineClient.translateException(RedmineClient.java:298) at com.atlassian.jira.plugins.importer.redmine.RedmineClient.getUserName(RedmineClient.java:247) at com.atlassian.jira.plugins.importer.redmine.RedmineClient.getUserName(RedmineClient.java:252) at com.atlassian.jira.plugins.importer.redmine.transformer.IssueTransformer.apply(IssueTransformer.java:69) at com.atlassian.jira.plugins.importer.redmine.transformer.IssueTransformer.apply(IssueTransformer.java:30) at com.google.common.collect.Iterators$8.next(Iterators.java:782) at com.atlassian.jira.plugins.importer.imports.importer.impl.DefaultJiraDataImporter.importIssues(DefaultJiraDataImporter.java:750) at com.atlassian.jira.plugins.importer.imports.importer.impl.DefaultJiraDataImporter.doImport(DefaultJiraDataImporter.java:354) at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39) at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25) at java.lang.reflect.Method.invoke(Method.java:597) at org.springframework.aop.support.AopUtils.invokeJoinpointUsingReflection(AopUtils.java:307) at org.springframework.osgi.service.importer.support.internal.aop.ServiceInvoker.doInvoke(ServiceInvoker.java:58) at org.springframework.osgi.service.importer.support.internal.aop.ServiceInvoker.invoke(ServiceInvoker.java:62) at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:171) at org.springframework.aop.support.DelegatingIntroductionInterceptor.doProceed(DelegatingIntroductionInterceptor.java:131) at org.springframework.aop.support.DelegatingIntroductionInterceptor.invoke(DelegatingIntroductionInterceptor.java:119) at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:171) at org.springframework.osgi.service.util.internal.aop.ServiceTCCLInterceptor.invokeUnprivileged(ServiceTCCLInterceptor.java:56) at org.springframework.osgi.service.util.internal.aop.ServiceTCCLInterceptor.invoke(ServiceTCCLInterceptor.java:39) at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:171) at org.springframework.osgi.service.importer.support.LocalBundleContextAdvice.invoke(LocalBundleContextAdvice.java:59) at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:171) at org.springframework.aop.support.DelegatingIntroductionInterceptor.doProceed(DelegatingIntroductionInterceptor.java:131) at org.springframework.aop.support.DelegatingIntroductionInterceptor.invoke(DelegatingIntroductionInterceptor.java:119) at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:171) at org.springframework.aop.framework.JdkDynamicAopProxy.invoke(JdkDynamicAopProxy.java:204) at $Proxy1558.doImport(Unknown Source) at com.atlassian.jira.plugins.importer.imports.importer.impl.ImporterCallable.call(ImporterCallable.java:27) at com.atlassian.jira.plugins.importer.imports.importer.impl.ImporterCallable.call(ImporterCallable.java:16) at com.atlassian.jira.task.TaskManagerImpl$TaskCallableDecorator.call(TaskManagerImpl.java:366) at java.util.concurrent.FutureTask$Sync.innerRun(FutureTask.java:303) at java.util.concurrent.FutureTask.run(FutureTask.java:138) at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:439) at java.util.concurrent.FutureTask$Sync.innerRun(FutureTask.java:303) at java.util.concurrent.FutureTask.run(FutureTask.java:138) at com.atlassian.multitenant.impl.DefaultMultiTenantManager.runForTenant(DefaultMultiTenantManager.java:61) at com.atlassian.multitenant.juc.MultiTenantExecutors$WrappedRunnable.run(MultiTenantExecutors.java:160) at com.atlassian.jira.task.ForkedThreadExecutor$ForkedRunnableDecorator.run(ForkedThreadExecutor.java:249) at java.lang.Thread.run(Thread.java:662) Caused by: com.taskadapter.redmineapi.NotFoundException: Server returned '404 not found'. response body: at com.taskadapter.redmineapi.internal.comm.redmine.RedmineErrorHandler.processContent(RedmineErrorHandler.java:45) at com.taskadapter.redmineapi.internal.comm.redmine.RedmineErrorHandler.processContent(RedmineErrorHandler.java:21) at com.taskadapter.redmineapi.internal.comm.ComposingHandler.processContent(ComposingHandler.java:25) at com.taskadapter.redmineapi.internal.comm.ComposingHandler.processContent(ComposingHandler.java:25) at com.taskadapter.redmineapi.internal.comm.BaseCommunicator.sendRequest(BaseCommunicator.java:83) at com.taskadapter.redmineapi.internal.comm.redmine.RedmineAuthenticator.sendRequest(RedmineAuthenticator.java:54) at com.taskadapter.redmineapi.internal.comm.FmapCommunicator.sendRequest(FmapCommunicator.java:26) at com.taskadapter.redmineapi.internal.comm.FmapCommunicator.sendRequest(FmapCommunicator.java:26) at com.taskadapter.redmineapi.internal.comm.BasicSimplifier.sendRequest(BasicSimplifier.java:24) at com.taskadapter.redmineapi.internal.Transport.getObject(Transport.java:269) at com.taskadapter.redmineapi.internal.Transport.getObject(Transport.java:330) at com.taskadapter.redmineapi.RedmineManager.getUserById(RedmineManager.java:363) at com.atlassian.jira.plugins.importer.redmine.manager.CachedJiraRedmineManager.getUserById(CachedJiraRedmineManager.java:123) at com.atlassian.jira.plugins.importer.redmine.RedmineClient.getUserName(RedmineClient.java:244) ... 39 more
The importer requested /users/8.json?include=memberships which does not exist:
x.x.x.x - - [08/Jan/2013:12:10:01 +0100] "GET /users/8.json?include=memberships HTTP/1.1" 404 616 "-" "-"
Redmine user with id 8 is not an actual user, but the above-mentioned group. Therefore, the above request fails (not found). As a workaround, I created a new dummy user with id 12, that does not belong to any group or project, and set up the following redirect:
RewriteRule ^users/8\.json /users/12.json [L,R]
That way, the importer got the return value for user with id 12 instead. I assume this is a bug in the Redmine importer plugin, isn't it?
Hi Martin,
1. Redmine importer supports version 1.3 and above and 2.0 and above. So it supports version 1.4
2. The behavior described in your question is definitively a bug. I've raised a bug report for it https://ecosystem.atlassian.net/browse/JIM-915
The above stack-trace seems to be related to the incompatibility of the Redmine version. Please make sure that the Redmine version is 1.3+ or 2.0+.
You must be a registered user to add a comment. If you've already registered, sign in. Otherwise, register and sign in.
You must be a registered user to add a comment. If you've already registered, sign in. Otherwise, register and sign in.
Wait a minute - does this mean that the Redmine importer supports 1.3 but does not support 1.4?
You must be a registered user to add a comment. If you've already registered, sign in. Otherwise, register and sign in.
Online forums and learning are now in one easy-to-use experience.
By continuing, you accept the updated Community Terms of Use and acknowledge the Privacy Policy. Your public name, photo, and achievements may be publicly visible and available in search engines.
You must be a registered user to add a comment. If you've already registered, sign in. Otherwise, register and sign in.