Steps to reproduce:

      1. Create service desk project
      2. Create E-mail Channel
      3. Send e-mail to create issue in Service Desk Project
      4. Reply to issue notification from agent e-mail from gmail web account.

      Results in log:

      {no format}

      [mail.incoming.jepp.processor] Exception when MailHandlerWorker handles message:
      java.lang.NullPointerException
      at javax.mail.internet.MimeUtility.decodeText(MimeUtility.java:573)
      at com.atlassian.servicedesk.squalor.email.ServiceDeskMailUtils.addAttachments(ServiceDeskMailUtils.java:310)
      at com.atlassian.servicedesk.squalor.email.ServiceDeskMailUtils.getAttachments(ServiceDeskMailUtils.java:260)
      at com.atlassian.servicedesk.internal.feature.emailchannel.IncomingEmailManager.addCommentAndParticipantsFromEmail(IncomingEmailManager.scala:98)
      at com.atlassian.servicedesk.internal.feature.emailchannel.IncomingEmailService$$anonfun$com$$$$$232a9741555606649ac4fec7538fd7$$$$anonfun$apply$23$$anonfun$apply$24.apply(IncomingEmailService.scala:144)
      at com.atlassian.servicedesk.internal.feature.emailchannel.IncomingEmailService$$anonfun$com$$$$$232a9741555606649ac4fec7538fd7$$$$anonfun$apply$23$$anonfun$apply$24.apply(IncomingEmailService.scala:144)
      at com.atlassian.servicedesk.internal.feature.emailchannel.IncomingEmailService$$anonfun$com$$$$$cd2731b58a8142effad79be1482acd$$$$inEmailContext$1$$anonfun$apply$26.apply(IncomingEmailService.scala:164)
      at com.atlassian.servicedesk.internal.utils.context.PortalContextUtil$.inPortalContext(PortalContextUtil.scala:23)
      at com.atlassian.servicedesk.internal.feature.emailchannel.IncomingEmailService$$anonfun$com$atlassian$servicedesk$internal$feature$emailchannel$IncomingEmailService$$inEmailContext$1.apply(IncomingEmailService.scala:163)
      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:161)
      at com.atlassian.servicedesk.internal.feature.emailchannel.IncomingEmailService$$anonfun$com$$$$$7525f2ffb11794ac33655698263f5c44$$$$addCommentAndParticipantsToIssue$1$$anonfun$apply$23.apply(IncomingEmailService.scala:142)
      at com.atlassian.servicedesk.internal.feature.emailchannel.IncomingEmailService$$anonfun$com$$$$$7525f2ffb11794ac33655698263f5c44$$$$addCommentAndParticipantsToIssue$1$$anonfun$apply$23.apply(IncomingEmailService.scala:141)
      at scalaz.$bslash$div$class.flatMap(Either.scala:117)
      at scalaz.$bslash$div$minus.flatMap(Either.scala:283)
      at com.atlassian.servicedesk.internal.feature.emailchannel.IncomingEmailService$$anonfun$com$$$$$7525f2ffb11794ac33655698263f5c44$$$$addCommentAndParticipantsToIssue$1.apply(IncomingEmailService.scala:141)
      at com.atlassian.servicedesk.internal.feature.emailchannel.IncomingEmailService$$anonfun$com$$$$$7525f2ffb11794ac33655698263f5c44$$$$addCommentAndParticipantsToIssue$1.apply(IncomingEmailService.scala:140)
      at scalaz.$bslash$div$class.flatMap(Either.scala:117)
      at scalaz.$bslash$div$minus.flatMap(Either.scala:283)
      at com.atlassian.servicedesk.internal.feature.emailchannel.IncomingEmailService.com$atlassian$servicedesk$internal$feature$emailchannel$IncomingEmailService$$addCommentAndParticipantsToIssue(IncomingEmailService.scala:140)
      at com.atlassian.servicedesk.internal.feature.emailchannel.IncomingEmailService$$anonfun$addCommentByChannelKey$1.apply(IncomingEmailService.scala:133)
      at com.atlassian.servicedesk.internal.feature.emailchannel.IncomingEmailService$$anonfun$addCommentByChannelKey$1.apply(IncomingEmailService.scala:132)
      at scalaz.$bslash$div$class.flatMap(Either.scala:117)
      at scalaz.$bslash$div$minus.flatMap(Either.scala:283)
      at com.atlassian.servicedesk.internal.feature.emailchannel.IncomingEmailService.addCommentByChannelKey(IncomingEmailService.scala:132)
      at com.atlassian.servicedesk.internal.feature.emailchannel.IncomingEmailService.processEmail(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.handleReplyMessage(SDMailHandler.scala:29)
      at com.atlassian.jira.internal.mail.processor.feature.processor.MailHandlerWorker.handle(MailHandlerWorker.java:59)
      at com.atlassian.jira.internal.mail.processor.feature.processor.MailProcessorWorker.processMailItem(MailProcessorWorker.java:149)
      at com.atlassian.jira.internal.mail.processor.feature.processor.MailProcessorWorker.process(MailProcessorWorker.java:83)
      at com.atlassian.jira.internal.mail.processor.feature.processor.MailProcessorService.run(MailProcessorService.java:41)
      at com.atlassian.jira.internal.mail.processor.services.MailProcessorExecutor.run(MailProcessorExecutor.java:34)
      at com.atlassian.jira.internal.mail.processor.services.AbstractMailExecutor.execute(AbstractMailExecutor.java:48)
      at com.atlassian.jira.internal.mail.processor.services.MailJobRunner.runJob(MailJobRunner.java:38)
      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)
      at org.quartz.simpl.SimpleThreadPool$WorkerThread.run(SimpleThreadPool.java:549)

      
      

      Things to note:

      1. If you change the agents profile within JIRA to use plain text instead of html format it processes fine.
      2. The html text processes file. It's the Jira branded img/png files that causes the null pointer on the reply to the issue notification. More specifically in ServiceDeskMailUtils ( javax.mail.BodyPart) contact seems to be empty.

      It seems the content is null. Looking at the exact section of images its failing. It's the quoted text that is put into png format from the initial notification

      Possible Cause:

      The mail client displays the attached file within the message body in HTML that refers to an image that’s isn't in the message itself. It instead references a URL.

        1. ContentNull.png
          ContentNull.png
          141 kB
        2. Replyimage.png
          Replyimage.png
          133 kB

            [JSDSERVER-1863] Null pointer when agent replying to Issue Notifications via gmail

            No work has yet been logged on this issue.

              cnguyen Chuong Nam Nguyen (Inactive)
              jcastro Jose Castro (Inactive)
              Affected customers:
              1 This affects my team
              Watchers:
              2 Start watching this issue

                Created:
                Updated:
                Resolved: