Uploaded image for project: 'Jira Service Management Data Center'
  1. Jira Service Management Data Center
  2. JSDSERVER-1167

Service Desk Mail Handler fails to process comment with NPE

    XMLWordPrintable

Details

    Description

      Summary

      Service Desk Mail Channel fails to process mail to add comment to an existing issue. Creating new issue via Service Desk Mail Channel works as expected. The following NPE can be found in the logs:

      2014-10-29 13:35:56,636 atlassian-scheduler-quartz1.clustered_Worker-2 ERROR anonymous    Mail handler used by JIRA Service Desk. Do not modify or delete. 10,600 [atlassian.jira.service.ServiceRunner] An error occurred while trying to run service 'Mail handler used by JIRA Service Desk. Do not modify or delete. 10,600'. null
      java.lang.NullPointerException
      	at java.io.File.createTempFile(Unknown Source)
      	at java.io.File.createTempFile(Unknown Source)
      	at com.atlassian.servicedesk.internal.comment.ServiceDeskCommentService.com$atlassian$servicedesk$internal$comment$ServiceDeskCommentService$$createTempFile(ServiceDeskCommentService.scala:111)
      	at com.atlassian.servicedesk.internal.comment.ServiceDeskCommentService$$anonfun$9.apply(ServiceDeskCommentService.scala:173)
      	at com.atlassian.servicedesk.internal.comment.ServiceDeskCommentService$$anonfun$9.apply(ServiceDeskCommentService.scala:171)
      	at scala.collection.TraversableLike$$anonfun$map$1.apply(TraversableLike.scala:244)
      	at scala.collection.TraversableLike$$anonfun$map$1.apply(TraversableLike.scala:244)
      	at scala.collection.immutable.List.foreach(List.scala:318)
      	at scala.collection.TraversableLike$class.map(TraversableLike.scala:244)
      	at scala.collection.AbstractTraversable.map(Traversable.scala:105)
      	at com.atlassian.servicedesk.internal.comment.ServiceDeskCommentService.validateMailAttachment(ServiceDeskCommentService.scala:170)
      	at com.atlassian.servicedesk.internal.comment.ServiceDeskCommentService.addCommentWithMessageAttachments(ServiceDeskCommentService.scala:139)
      	at com.atlassian.servicedesk.internal.feature.incomingemail.IncomingEmailManager.com$atlassian$servicedesk$internal$feature$incomingemail$IncomingEmailManager$$addCommentAndAttachments(IncomingEmailManager.scala:147)
      	at com.atlassian.servicedesk.internal.feature.incomingemail.IncomingEmailManager$$anonfun$crea$$$$45e8b6ac75ec78b1fe055b228f4dd69$$$$anonfun$apply$16$$anonfun$apply$17$$anonfun$apply$18.apply(IncomingEmailManager.scala:112)
      	at com.atlassian.servicedesk.internal.feature.incomingemail.IncomingEmailManager$$anonfun$crea$$$$45e8b6ac75ec78b1fe055b228f4dd69$$$$anonfun$apply$16$$anonfun$apply$17$$anonfun$apply$18.apply(IncomingEmailManager.scala:112)
      	at scala.util.Either$.cond(Either.scala:593)
      	at com.atlassian.servicedesk.internal.feature.incomingemail.IncomingEmailManager$$anonfun$crea$$$$45e8b6ac75ec78b1fe055b228f4dd69$$$$anonfun$apply$16$$anonfun$apply$17.apply(IncomingEmailManager.scala:112)
      	at com.atlassian.servicedesk.internal.feature.incomingemail.IncomingEmailManager$$anonfun$crea$$$$45e8b6ac75ec78b1fe055b228f4dd69$$$$anonfun$apply$16$$anonfun$apply$17.apply(IncomingEmailManager.scala:111)
      	at scala.util.Either$RightProjection.flatMap(Either.scala:523)
      	at com.atlassian.servicedesk.internal.feature.incomingemail.IncomingEmailManager$$anonfun$crea$$$$ae31c5227827865ce7b4a4d45d71348e$$$$anonfun$apply$14$$anonfun$apply$15$$anonfun$apply$16.apply(IncomingEmailManager.scala:111)
      	at com.atlassian.servicedesk.internal.feature.incomingemail.IncomingEmailManager$$anonfun$crea$$$$ae31c5227827865ce7b4a4d45d71348e$$$$anonfun$apply$14$$anonfun$apply$15$$anonfun$apply$16.apply(IncomingEmailManager.scala:110)
      	at scala.util.Either$RightProjection.flatMap(Either.scala:523)
      	at com.atlassian.servicedesk.internal.feature.incomingemail.IncomingEmailManager$$anonfun$crea$$$$ae31c5227827865ce7b4a4d45d71348e$$$$anonfun$apply$14$$anonfun$apply$15.apply(IncomingEmailManager.scala:110)
      	at com.atlassian.servicedesk.internal.feature.incomingemail.IncomingEmailManager$$anonfun$crea$$$$ae31c5227827865ce7b4a4d45d71348e$$$$anonfun$apply$14$$anonfun$apply$15.apply(IncomingEmailManager.scala:109)
      	at scala.util.Either$RightProjection.flatMap(Either.scala:523)
      	at com.atlassian.servicedesk.internal.feature.incomingemail.IncomingEmailManager$$anonfun$createIssueInJiraContext$1$$anonfun$apply$10$$anonfun$apply$11$$anonfun$apply$13$$anonfun$apply$14.apply(IncomingEmailManager.scala:109)
      	at com.atlassian.servicedesk.internal.feature.incomingemail.IncomingEmailManager$$anonfun$createIssueInJiraContext$1$$anonfun$apply$10$$anonfun$apply$11$$anonfun$apply$13$$anonfun$apply$14.apply(IncomingEmailManager.scala:108)
      	at scala.util.Either$RightProjection.flatMap(Either.scala:523)
      	at com.atlassian.servicedesk.internal.feature.incomingemail.IncomingEmailManager$$anonfun$createIssueInJiraContext$1$$anonfun$apply$10$$anonfun$apply$11$$anonfun$apply$13.apply(IncomingEmailManager.scala:108)
      	at com.atlassian.servicedesk.internal.feature.incomingemail.IncomingEmailManager$$anonfun$createIssueInJiraContext$1$$anonfun$apply$10$$anonfun$apply$11$$anonfun$apply$13.apply(IncomingEmailManager.scala:107)
      	at scala.util.Either$RightProjection.flatMap(Either.scala:523)
      	at com.atlassian.servicedesk.internal.feature.incomingemail.IncomingEmailManager$$anonfun$createIssueInJiraContext$1$$anonfun$apply$10$$anonfun$apply$11.apply(IncomingEmailManager.scala:107)
      	at com.atlassian.servicedesk.internal.feature.incomingemail.IncomingEmailManager$$anonfun$createIssueInJiraContext$1$$anonfun$apply$10$$anonfun$apply$11.apply(IncomingEmailManager.scala:106)
      	at scala.util.Either$RightProjection.flatMap(Either.scala:523)
      	at com.atlassian.servicedesk.internal.feature.incomingemail.IncomingEmailManager$$anonfun$createIssueInJiraContext$1$$anonfun$apply$10.apply(IncomingEmailManager.scala:106)
      	at com.atlassian.servicedesk.internal.feature.incomingemail.IncomingEmailManager$$anonfun$createIssueInJiraContext$1$$anonfun$apply$10.apply(IncomingEmailManager.scala:105)
      	at scala.util.Either$RightProjection.flatMap(Either.scala:523)
      	at com.atlassian.servicedesk.internal.feature.incomingemail.IncomingEmailManager$$anonfun$createIssueInJiraContext$1.apply(IncomingEmailManager.scala:105)
      	at com.atlassian.servicedesk.internal.feature.incomingemail.IncomingEmailManager$$anonfun$createIssueInJiraContext$1.apply(IncomingEmailManager.scala:104)
      	at scala.util.Either$RightProjection.flatMap(Either.scala:523)
      	at com.atlassian.servicedesk.internal.feature.incomingemail.IncomingEmailManager.createIssueInJiraContext(IncomingEmailManager.scala:104)
      	at com.atlassian.servicedesk.internal.feature.incomingemail.IncomingEmailManager.createIssueFromEmail(IncomingEmailManager.scala:74)
      	at com.atlassian.servicedesk.internal.feature.incomingemail.IncomingEmailService$$anonfun$createIssueFromEmail$1$$anonfun$apply$2$$anonfun$apply$3$$anonfun$apply$4$$anonfun$apply$5.apply(IncomingEmailService.scala:66)
      	at com.atlassian.servicedesk.internal.feature.incomingemail.IncomingEmailService$$anonfun$createIssueFromEmail$1$$anonfun$apply$2$$anonfun$apply$3$$anonfun$apply$4$$anonfun$apply$5.apply(IncomingEmailService.scala:66)
      	at com.atlassian.servicedesk.internal.feature.incomingemail.IncomingEmailService$$anonfun$com$$$$$b964c765cf7c52d46b2e78e0cf72fae$$$$inEmailContext$1$$anonfun$apply$15.apply(IncomingEmailService.scala:119)
      	at com.atlassian.servicedesk.internal.utils.context.PortalContextUtil$.inPortalContextWithParam(PortalContextUtil.scala:32)
      	at com.atlassian.servicedesk.internal.feature.incomingemail.IncomingEmailService$$anonfun$com$atlassian$servicedesk$internal$feature$incomingemail$IncomingEmailService$$inEmailContext$1.apply(IncomingEmailService.scala:118)
      	at com.atlassian.servicedesk.internal.utils.context.AuthenticationContextUtil$.runAsUser(AuthenticationContextUtil.scala:15)
      	at com.atlassian.servicedesk.internal.feature.incomingemail.IncomingEmailService.com$atlassian$servicedesk$internal$feature$incomingemail$IncomingEmailService$$inEmailContext(IncomingEmailService.scala:116)
      	at com.atlassian.servicedesk.internal.feature.incomingemail.IncomingEmailService$$anonfun$createIssueFromEmail$1$$anonfun$apply$2$$anonfun$apply$3$$anonfun$apply$4.apply(IncomingEmailService.scala:64)
      	at com.atlassian.servicedesk.internal.feature.incomingemail.IncomingEmailService$$anonfun$createIssueFromEmail$1$$anonfun$apply$2$$anonfun$apply$3$$anonfun$apply$4.apply(IncomingEmailService.scala:63)
      	at scala.util.Either$RightProjection.flatMap(Either.scala:523)
      	at com.atlassian.servicedesk.internal.feature.incomingemail.IncomingEmailService$$anonfun$createIssueFromEmail$1$$anonfun$apply$2$$anonfun$apply$3.apply(IncomingEmailService.scala:63)
      	at com.atlassian.servicedesk.internal.feature.incomingemail.IncomingEmailService$$anonfun$createIssueFromEmail$1$$anonfun$apply$2$$anonfun$apply$3.apply(IncomingEmailService.scala:62)
      	at scala.util.Either$RightProjection.flatMap(Either.scala:523)
      	at com.atlassian.servicedesk.internal.feature.incomingemail.IncomingEmailService$$anonfun$createIssueFromEmail$1$$anonfun$apply$2.apply(IncomingEmailService.scala:62)
      	at com.atlassian.servicedesk.internal.feature.incomingemail.IncomingEmailService$$anonfun$createIssueFromEmail$1$$anonfun$apply$2.apply(IncomingEmailService.scala:61)
      	at scala.util.Either$RightProjection.flatMap(Either.scala:523)
      	at com.atlassian.servicedesk.internal.feature.incomingemail.IncomingEmailService$$anonfun$createIssueFromEmail$1.apply(IncomingEmailService.scala:61)
      	at com.atlassian.servicedesk.internal.feature.incomingemail.IncomingEmailService$$anonfun$createIssueFromEmail$1.apply(IncomingEmailService.scala:60)
      	at scala.util.Either$RightProjection.flatMap(Either.scala:523)
      	at com.atlassian.servicedesk.internal.feature.incomingemail.IncomingEmailService.createIssueFromEmail(IncomingEmailService.scala:60)
      	at com.atlassian.servicedesk.internal.feature.incomingemail.IncomingEmailService.processEmail(IncomingEmailService.scala:48)
      	at com.atlassian.servicedesk.internal.email.SDMailHandler.processMessage(SDMailHandler.java:36)
      	at com.atlassian.servicedesk.squalor.email.AbstractMailHandler.handleMessage(AbstractMailHandler.java:100)
      	at com.atlassian.servicedesk.squalor.email.SDMessageProcessor.execute(SDMessageProcessor.java:77)
      	at com.atlassian.servicedesk.squalor.email.ServiceDeskMailFetcherService.runImpl(ServiceDeskMailFetcherService.java:71)
      	at com.atlassian.jira.service.services.file.AbstractMessageHandlingService.run(AbstractMessageHandlingService.java:261)
      	at com.atlassian.jira.service.JiraServiceContainerImpl.run(JiraServiceContainerImpl.java:66)
      	at com.atlassian.jira.service.ServiceRunner.runService(ServiceRunner.java:75)
      	at com.atlassian.jira.service.ServiceRunner.runServiceId(ServiceRunner.java:53)
      	at com.atlassian.jira.service.ServiceRunner.runJob(ServiceRunner.java:36)
      	at com.atlassian.scheduler.core.JobLauncher.runJob(JobLauncher.java:135)
      	at com.atlassian.scheduler.core.JobLauncher.launchAndBuildResponse(JobLauncher.java:101)
      	at com.atlassian.scheduler.core.JobLauncher.launch(JobLauncher.java:80)
      	at com.atlassian.scheduler.quartz1.Quartz1Job.execute(Quartz1Job.java:32)
      	at org.quartz.core.JobRunShell.run(JobRunShell.java:223)

      Expected Results

      Adding comment via Service Desk Mail channel should work and processed properly without any problem.

      Attachments

        Issue Links

          Activity

            People

              Unassigned Unassigned
              znoorsazali Zul NS [Atlassian]
              Votes:
              1 Vote for this issue
              Watchers:
              1 Start watching this issue

              Dates

                Created:
                Updated:

                Backbone Issue Sync