Parsing UTF-7 email messages

Still need help?

The Atlassian Community is here for you.

Ask the community

UTF-7 is a rather unusual encoding, while Atlassian allows the below changes for the bundled Java, however, Atlassian Support does not provide assistance for configuring them. Consequently, Atlassian cannot guarantee to provide any support for them.


This is mainly a Java limitation, accordingly, If you need help with the Jave configurations please reach out to the Java vendor.

Email messages in unicode-1-1-utf-7 (aka utf-7) cannot be parsed. The following appears in the atlassian-jira.log:

2007-01-31 12:54:59,176 JiraQuartzScheduler_Worker-2 ERROR [service.util.handler.CreateIssueHandler] Could not create issue!
java.io.UnsupportedEncodingException: unicode-1-1-utf-7
at sun.nio.cs.StreamDecoder.forInputStreamReader(StreamDecoder.java:52)
at java.io.InputStreamReader.<init>(InputStreamReader.java:83)
at com.sun.mail.handlers.text_plain.getContent(text_plain.java:64)
at javax.activation.DataSourceDataContentHandler.getContent(DataHandler.java:774)
at javax.activation.DataHandler.getContent(DataHandler.java:521)
at javax.mail.internet.MimeBodyPart.getContent(MimeBodyPart.java:603)
at com.atlassian.jira.service.util.handler.AbstractMessageHandler.handleMultipart(AbstractMessageHandler.java:236)
at com.atlassian.jira.service.util.handler.AbstractMessageHandler.createAttachmentsForMessage(AbstractMessageHandler.java:201)
at com.atlassian.jira.service.util.handler.CreateIssueHandler.handleMessage(CreateIssueHandler.java:201)
at com.atlassian.jira.service.util.handler.CreateOrCommentHandler.handleMessage(CreateOrCommentHandler.java:115)
at com.atlassian.jira.service.services.mail.MailFetcherService.run(MailFetcherService.java:190)
at com.atlassian.jira.service.JiraServiceContainerImpl.run(JiraServiceContainerImpl.java:67)
at com.atlassian.jira.service.ServiceRunner.execute(ServiceRunner.java:48)
at org.quartz.core.JobRunShell.run(JobRunShell.java:191)
at org.quartz.simpl.SimpleThreadPool$WorkerThread.run(SimpleThreadPool.java:516)

Workaround

Java 8

  1. Download the jutf7 jar from http://sourceforge.net/projects/jutf7
  2. Copy the jar to your $JAVA_HOME/jre/lib/ext directory.

    tip/resting Created with Sketch.

    The JAR file has to be in exactly this directory for the class loader to pick it up.

  3. Restart JIRA.


Java 11

As per Oracle documentation, the "ext" path has been removed starting from java 9 and needs to be set in the classpath, accordingly, you can add the jar directory in the "setenv.sh".

  1. Download the jutf7 jar from http://sourceforge.net/projects/jutf7.
  2. Copy the jar to your desired $JAVA_HOME directory.

  3. Export the file in your setenv.sh.
export CLASSPATH=.:path1/xxx.jar:path2/yyy.jar

      4. Restart Jira.

Last modified on Feb 3, 2023

Was this helpful?

Yes
No
Provide feedback about this article
Powered by Confluence and Scroll Viewport.