Details
-
Bug
-
Resolution: Fixed
-
Low
Description
Summary
When an e-mail is sent in to the JSD mail handler that contains a character not parsable by the HtmlToWikiTextConverter, an exception is thrown and error is visible in the mail processing logs.
Environment
- JIRA Service Desk v3.2.0-OD-03
How to Diagnose
If an email is sent in and an issue is not created, check the processing logs for the mail account at the following URL:
https://<instance>.atlassian.net/secure/admin/SDMailInfo.jspa
- Click View log to the right of the e-mail address used for your Service Desk, then click the Processing Log tab. The error String index out of range: 0 will be in the Details column.
Expected Results
E-mail is parsed successfully and a JSD issue is created with the e-mail contents.
Actual Results
The below exception is thrown in the JIRA log file:
2016-02-19 17:16:16,669 Caesium-1-2 ERROR anonymous [c.a.m.incoming.jepp.processor] Exception when MailHandlerWorker handles message: java.lang.StringIndexOutOfBoundsException: String index out of range: 0 at java.lang.String.charAt(String.java:646) at com.atlassian.mail.converters.wiki.HtmlToWikiTextConverter$FormattingVisitor.head(HtmlToWikiTextConverter.java:133) at org.jsoup.select.NodeTraversor.traverse(NodeTraversor.java:31) at com.atlassian.mail.converters.wiki.HtmlToWikiTextConverter.convert(HtmlToWikiTextConverter.java:88) at com.atlassian.mail.HtmlToWikiTextConverter.convert(HtmlToWikiTextConverter.java:27) at com.atlassian.mail.MailUtils$1.convert(MailUtils.java:206) at com.atlassian.mail.MailUtils.extractTextFromPart(MailUtils.java:537) at com.atlassian.mail.MailUtils.getBodyFromMultipart(MailUtils.java:487) at com.atlassian.mail.MailUtils.getBodyFromMultipart(MailUtils.java:465) at com.atlassian.mail.MailUtils.getBody(MailUtils.java:225) at com.atlassian.mail.MailUtils.getBody(MailUtils.java:210) at com.atlassian.servicedesk.internal.feature.emailchannel.IncomingEmailParser.parse(IncomingEmailParser.java:41) at com.atlassian.servicedesk.internal.feature.emailchannel.IncomingEmailManager.createIssueInJiraContext(IncomingEmailManager.scala:191) at com.atlassian.servicedesk.internal.feature.emailchannel.IncomingEmailManager.createIssueFromEmail(IncomingEmailManager.scala:171) at com.atlassian.servicedesk.internal.feature.emailchannel.IncomingEmailService$$anonfun$createNewIssueWithMailChannel$2.apply(IncomingEmailService.scala:146) at com.atlassian.servicedesk.internal.feature.emailchannel.IncomingEmailService$$anonfun$createNewIssueWithMailChannel$2.apply(IncomingEmailService.scala:145) at scalaz.$bslash$div.flatMap(Either.scala:134) at com.atlassian.servicedesk.internal.feature.emailchannel.IncomingEmailService.createNewIssueWithMailChannel(IncomingEmailService.scala:145) at com.atlassian.servicedesk.internal.feature.emailchannel.IncomingEmailService$$anonfun$com$$$$bd7392fa9edbf4ccadfa49f2f55a2a$$$$OrCommentOnIssueWithMailChannel$1.apply(IncomingEmailService.scala:102) at com.atlassian.servicedesk.internal.feature.emailchannel.IncomingEmailService$$anonfun$com$$$$bd7392fa9edbf4ccadfa49f2f55a2a$$$$OrCommentOnIssueWithMailChannel$1.apply(IncomingEmailService.scala:99) at com.atlassian.servicedesk.internal.feature.emailchannel.IncomingEmailService$$anonfun$com$$$$f0a28e2c59a8a5c0c52a37404eee56bd$$$$nEmailContext$1$$anonfun$apply$16.apply(IncomingEmailService.scala:166) at com.atlassian.servicedesk.internal.utils.context.CustomerContextUtil$.inCustomerContext(CustomerContextUtil.scala:24) at com.atlassian.servicedesk.internal.feature.emailchannel.IncomingEmailService$$anonfun$com$atlassian$servicedesk$internal$feature$emailchannel$IncomingEmailService$$inEmailContext$1.apply(IncomingEmailService.scala:165) at com.atlassian.servicedesk.internal.utils.context.AuthenticationContextUtil$.runAsUser(AuthenticationContextUtil.scala:15) at com.atlassian.servicedesk.internal.feature.emailchannel.IncomingEmailService.com$atlassian$servicedesk$internal$feature$emailchannel$IncomingEmailService$$inEmailContext(IncomingEmailService.scala:163) at com.atlassian.servicedesk.internal.feature.emailchannel.IncomingEmailService.com$atlassian$servicedesk$internal$feature$emailchannel$IncomingEmailService$$createNewOrCommentOnIssueWithMailChannel(IncomingEmailService.scala:99) at com.atlassian.servicedesk.internal.feature.emailchannel.IncomingEmailService$$anonfun$1$$anonfun$apply$2$$anonfun$apply$3.apply(IncomingEmailService.scala:79) at com.atlassian.servicedesk.internal.feature.emailchannel.IncomingEmailService$$anonfun$1$$anonfun$apply$2$$anonfun$apply$3.apply(IncomingEmailService.scala:78) at scalaz.$bslash$div.flatMap(Either.scala:134) at com.atlassian.servicedesk.internal.feature.emailchannel.IncomingEmailService$$anonfun$1$$anonfun$apply$2.apply(IncomingEmailService.scala:78) at com.atlassian.servicedesk.internal.feature.emailchannel.IncomingEmailService$$anonfun$1$$anonfun$apply$2.apply(IncomingEmailService.scala:77) at scalaz.$bslash$div.flatMap(Either.scala:134) at com.atlassian.servicedesk.internal.feature.emailchannel.IncomingEmailService$$anonfun$1.apply(IncomingEmailService.scala:77) at com.atlassian.servicedesk.internal.feature.emailchannel.IncomingEmailService$$anonfun$1.apply(IncomingEmailService.scala:76) at scalaz.$bslash$div.flatMap(Either.scala:134) at com.atlassian.servicedesk.internal.feature.emailchannel.IncomingEmailService.processEmailWithMailChannel(IncomingEmailService.scala:76) at com.atlassian.servicedesk.internal.feature.emailchannel.emailplatform.handler.SDMailHandler.processMessage(SDMailHandler.scala:41) at com.atlassian.servicedesk.internal.feature.emailchannel.emailplatform.handler.SDMailHandler.handleNewMessage(SDMailHandler.scala:25) at com.atlassian.jira.internal.mail.processor.feature.processor.MailHandlerWorker.handle(MailHandlerWorker.java:64) at com.atlassian.jira.internal.mail.processor.feature.processor.MailProcessorWorker.processMailItem(MailProcessorWorker.java:129) at com.atlassian.jira.internal.mail.processor.feature.processor.MailProcessorWorker.process(MailProcessorWorker.java:76) at com.atlassian.jira.internal.mail.processor.feature.processor.MailProcessorService.run(MailProcessorService.java:36) at com.atlassian.jira.internal.mail.processor.services.MailProcessorExecutor.run(MailProcessorExecutor.java:30) at com.atlassian.jira.internal.mail.processor.services.AbstractMailExecutor.execute(AbstractMailExecutor.java:42) at com.atlassian.jira.internal.mail.processor.services.MailJobRunner.runJob(MailJobRunner.java:35) at com.atlassian.scheduler.core.JobLauncher.runJob(JobLauncher.java:153) at com.atlassian.scheduler.core.JobLauncher.launchAndBuildResponse(JobLauncher.java:118) at com.atlassian.scheduler.core.JobLauncher.launch(JobLauncher.java:97) at com.atlassian.scheduler.caesium.impl.CaesiumSchedulerService.launchJob(CaesiumSchedulerService.java:401) at com.atlassian.scheduler.caesium.impl.CaesiumSchedulerService.executeClusteredJob(CaesiumSchedulerService.java:396) at com.atlassian.scheduler.caesium.impl.CaesiumSchedulerService.executeQueuedJob(CaesiumSchedulerService.java:349) at com.atlassian.scheduler.caesium.impl.CaesiumSchedulerService$1.consume(CaesiumSchedulerService.java:255) at com.atlassian.scheduler.caesium.impl.CaesiumSchedulerService$1.consume(CaesiumSchedulerService.java:252) at com.atlassian.scheduler.caesium.impl.SchedulerQueueWorker.executeJob(SchedulerQueueWorker.java:65) at com.atlassian.scheduler.caesium.impl.SchedulerQueueWorker.executeNextJob(SchedulerQueueWorker.java:59) at com.atlassian.scheduler.caesium.impl.SchedulerQueueWorker.run(SchedulerQueueWorker.java:34) at java.lang.Thread.run(Thread.java:745)
Workaround
Contact Atlassian Cloud Support(https://support.atlassian.com/) to disable the HtmlToWikiTextConverter.
Attachments
Issue Links
- is related to
-
QUALITY-310 Loading...