need more info to debug Trello importer error
Asked by Jeffrey Knurek:

I'm trying to use *Trello Importer Plugin for JIM* to import our existing issues into Jira. I found it works well for Trello boards that don't have much data, but it seems to fall apart whenever there is a special charater.

My current problem is this vague error:

```
Error converting XML to workflow descriptor.: root cause: The entity name must immediately follow the '&amp;' in the entity reference. (line:540 col:68)
```

If I could find the xml that the importer generates I'd probably be able to track this down. But otherwise, I have no insight into which entity is causing the problem or where to fix the data in Trello.


Answers:
author: pborkowski
body: Hi Jeffrey

I'm having difficulties to find out where the importer fails with import. Are there any more specific informations in the log file that would help me to investigate your problem? A stacktrace would be perferct.

Cheers, Przemek

comments: author: Jeffrey Knurek
body: I've attached the log from the failed import (jiraImportersPlugin-6667341194988996173.log)

And a screenshot of the error displayed in Jira

![](../../upfiles/jira-error.png)


author: pborkowski
body: It took me some time, but I finally was able to reproduce your problem. Trello Importer creates a dedicated workflow for your project during import. It's always called 'Trello Workflow for \<here your project name\>'. The exception occurs when you are starting an import and incompatible/edited Workflow with that name already exists.

This is a bug and I've created for that an issue under JIM project.

To workaround this issue, please make sure that worflow does not exisit before the import.

Cheers,

Przemek


author: Jeffrey Knurek
body: Thanks a lot for tracking this down.

The bad news is that, the workaround seems to have put me in a worse state. I deleted all the inactive workflow schemes (one had a name similar) and then tried the import again. It failed with the same error. Then when I tried to go and clean out ALL existing workflows, I am getting system errors from Jira

![](../../upfiles/Screen_Shot_2014-04-30_at_9.39.55_AM.png)

Looking at the logs has the following error message:

```
Uncaught exception thrown by REST service: java.lang.RuntimeException: com.opensymphony.workflow.FactoryException: Error converting XML to workflow descriptor.: root cause: The value of attribute "status" associated with an element type "unconditional-result" must not contain the '&lt;' character. (line:785 col:57)com.atlassian.cache.CacheException: java.lang.RuntimeException: com.opensymphony.workflow.FactoryException: Error converting XML to workflow descriptor.: root cause: The value of attribute "status" associated with an element type "unconditional-result" must not contain the '&lt;' character. (line:785 col:57)
```

going to [](http://localhost:8090/secure/admin/ViewStatuses.jspa)<http://localhost:8090/secure/admin/ViewStatuses.jspa>throws a 500 error...


author: pborkowski
body: Hi Jeffrey,

This problem seems to be more complex and it's now not only connected to the Trello Importer. I think it would be best to open a Support issue under: [support.atlassian.com](http://support.atlassian.com).

What I can see in your issue, is that JIRA for some reason tries to create a workflow that contains names that are not encoded. Trello Importer tries to create Workflow statuses based on your Trello "column" names - if you have there some XML-illegal characters (e.g. '\>') this could cause the importer to fail. I think you could try to perform a "simpler" import (some small Trello project with easy, XML-legal names), just to check if the importer is working at all for you.

Cheers,

Przemek


author: Jeffrey Knurek
body: Thanks Przemek,

I opened a Support issue: problem-report-192097

I had noticed early on the problem with the Trello List names, so I copied the Trello board and moved all the cards into one List called "Open". Maybe there was some underlying problem with one of the first import attempts that broke Jira statuses.

I had previously done a "simple" import amongst all the failures which worked for me, so I was able to rule out that it wasn't a tool problem directly, but rather a data mapping problem.

I did a fresh install of Jira and ran the importer again. It provided a more managebale error message as it successfully imported 74 of the 233 issues attempted. Here is the relavant bit of the logs where this failure occurred:


author: Jeffrey Knurek
body: ah - it seems that the problem now is that the importer is failing when it tries to import a Trello card that has attachments

```
2014-05-06 09:37:33,051 INFO - Importing issue: ExternalIssue{externalId=..., summary=...., issueType=Bug}2014-05-06 09:37:33,993 INFO - ------------------------------2014-05-06 09:37:33,993 INFO - Finished Importing : Issues2014-05-06 09:37:33,993 INFO - ------------------------------2014-05-06 09:37:33,994 ERROR - Unexpected failure occurred. Importer will stop immediately. Data may be in an unstable statejava.lang.NullPointerException	at com.google.common.base.Preconditions.checkNotNull(Preconditions.java:187)	at com.google.common.cache.CustomConcurrentHashMap.getOrCompute(CustomConcurrentHashMap.java:3801)	at com.google.common.cache.ComputingCache.get(ComputingCache.java:46)	at com.atlassian.jira.plugins.importer.trello.fetch.TrelloApiImpl.getUser(TrelloApiImpl.java:161)	...	at com.sun.proxy.$Proxy5110.doImport(Unknown Source)	at com.atlassian.jira.plugins.importer.imports.importer.impl.ImporterCallable.call(ImporterCallable.java:26)	at com.atlassian.jira.plugins.importer.imports.importer.impl.ImporterCallable.call(ImporterCallable.java:15)	at com.atlassian.jira.task.TaskManagerImpl$TaskCallableDecorator.call(TaskManagerImpl.java:374)	at java.util.concurrent.FutureTask.run(FutureTask.java:262)	at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:471)	at java.util.concurrent.FutureTask.run(FutureTask.java:262)	at com.atlassian.jira.task.ForkedThreadExecutor$ForkedRunnableDecorator.run(ForkedThreadExecutor.java:250)	at java.lang.Thread.run(Thread.java:744)
```


Tags: app

import