Configure Bamboo email notifications using JNDI - Misleading instructions

XMLWordPrintable

    • Type: Bug
    • Resolution: Fixed
    • Priority: Low
    • n/a
    • Affects Version/s: 9.2.18, 9.6.6
    • Component/s: Documentation (User)
    • None
    • 1
    • Severity 3 - Minor

      Issue Summary

      In the document Configuring Bamboo to Send SMTP Email via JNDI Connector, it is stated that the activation.jar file is not required for configuring email notifications using JNDI connector. However, it has been observed that without the activation.jar file, email notifications fail to work as expected.

      This is reproducible on Data Center: Yes

      Steps to Reproduce

      1. Please follow the instructions outlined in the document Configuring Bamboo to Send SMTP Email, specifically under the section Configuring email notifications for Gmail.
      2. Do not copy activation.jar as advised.

      Expected Results

      Bamboo should trigger email notifications without any issues. Documentation should be updated as below

      Existing

      In Bamboo 5.9 the mail-X.X.jar and activation-X.X.jar files were included in the download archive. Starting with Bamboo 5.10:

      • the mail-X.X.jar file has been renamed to javax.mail-X.X.X.jar and must be moved to <Bamboo-Install>/lib
      • the activation.jar file is not required
      New

      In Bamboo 5.9 the mail-X.X.jar and activation-X.X.jar files were included in the download archive. Starting with Bamboo 5.10:

      • The mail-X.X.jar file has been renamed to javax.mail-X.X.X.jar and must be moved to <Bamboo-Install>/lib
      • The activation-X.X.jar file has been renamed to javax.activation-X.X.X.jar and must be moved to <Bamboo-Install>/lib

      Actual Results

      The below exception can be seen in the Bamboo UI:

      Internal server error
      Go to...
      Site homepage
      A system error has occurred - our apologies!
      Please create a problem report on our support system at https://support.atlassian.com with the following information:
      a description of your problem and what you were doing at the time it occurred
      cut & paste the error and system information found below
      attach the atlassian-bamboo.log log file found in your application home.
      We will respond as promptly as possible.
      Thank you!
      Version: 9.6.6
      Build: 90607
      Build Date: 06 Nov 2024
      Request information:
      Request URL: http://bamboo.com/admin/configureMailServer.action
      Scheme: http
      Server: bamboo.com
      Port: 80
      URI: /admin/configureMailServer.action
      Context path:
      Servlet path: /admin/configureMailServer.action
      Path info:
      Query string:
      Stack Trace:
      ognl.MethodFailedException: Method "edit" failed for object com.atlassian.bamboo.ww2.actions.admin.mail.ConfigureMailServer@5b5e98c3 [java.lang.NoClassDefFoundError: javax/activation/DataHandler]
      	at ognl.OgnlRuntime.callAppropriateMethod(OgnlRuntime.java:1981)
      	at ognl.ObjectMethodAccessor.callMethod(ObjectMethodAccessor.java:68)
      	at com.opensymphony.xwork2.ognl.accessor.XWorkMethodAccessor.callMethodWithDebugInfo(XWorkMethodAccessor.java:98)
      	at com.opensymphony.xwork2.ognl.accessor.XWorkMethodAccessor.callMethod(XWorkMethodAccessor.java:90)
      	at ognl.OgnlRuntime.callMethod(OgnlRuntime.java:2045)
      	at ognl.ASTMethod.getValueBody(ASTMethod.java:97)
      	at ognl.SimpleNode.evaluateGetValueBody(SimpleNode.java:212)
      

      The below exception is thrown in the atlassian-bamboo.log file:

      2024-11-15 02:02:33,380 ERROR [http-nio-8085-exec-9 url: /admin/configureMailServer.action; user: bamboo] [FiveOhOh] 500 Exception was thrown.
      ognl.MethodFailedException: Method "edit" failed for object com.atlassian.bamboo.ww2.actions.admin.mail.ConfigureMailServer@2a9ad058
      	at ognl.OgnlRuntime.callAppropriateMethod(OgnlRuntime.java:1981) ~[ognl-3.1.29.jar:?]
      	at ognl.ObjectMethodAccessor.callMethod(ObjectMethodAccessor.java:68) ~[ognl-3.1.29.jar:?]
      ...
      Caused by: java.lang.NoClassDefFoundError: javax/activation/DataHandler
      	at com.atlassian.mail.server.impl.SMTPMailServerImpl.sendWithMessageId(SMTPMailServerImpl.java:200) ~[atlassian-mail-5.3.1.jar:?]
      	at com.atlassian.mail.server.impl.SMTPMailServerImpl.send(SMTPMailServerImpl.java:192) ~[atlassian-mail-5.3.1.jar:?]
      	at com.atlassian.bamboo.mail.EmailService.sendEmailSynchronously(EmailService.java:123) ~[atlassian-bamboo-core-9.6.6.jar:?]
      	at com.atlassian.bamboo.mail.BambooMailer.send(BambooMailer.java:70) ~[atlassian-bamboo-core-9.6.6.jar:?]
      	at com.atlassian.bamboo.ww2.actions.admin.mail.ConfigureMailServer.testSMTPServer(ConfigureMailServer.java:130) ~[atlassian-bamboo-web-9.6.6.jar:?]
      	at com.atlassian.bamboo.ww2.actions.admin.mail.ConfigureMailServer.edit(ConfigureMailServer.java:105) ~[atlassian-bamboo-web-9.6.6.jar:?]
      ...
      Caused by: java.lang.ClassNotFoundException: javax.activation.DataHandler
      	at java.net.URLClassLoader.findClass(URLClassLoader.java:445) ~[?:?]
      	at java.lang.ClassLoader.loadClass(ClassLoader.java:592) ~[?:?]
      	at java.lang.ClassLoader.loadClass(ClassLoader.java:525) ~[?:?]
      	at com.atlassian.mail.server.impl.SMTPMailServerImpl.sendWithMessageId(SMTPMailServerImpl.java:200) ~[atlassian-mail-5.3.1.jar:?]
      	at com.atlassian.mail.server.impl.SMTPMailServerImpl.send(SMTPMailServerImpl.java:192) ~[atlassian-mail-5.3.1.jar:?]
      	at com.atlassian.bamboo.mail.EmailService.sendEmailSynchronously(EmailService.java:123) ~[atlassian-bamboo-core-9.6.6.jar:?]
      	at com.atlassian.bamboo.mail.BambooMailer.send(BambooMailer.java:70) ~[atlassian-bamboo-core-9.6.6.jar:?]
      	at com.atlassian.bamboo.ww2.actions.admin.mail.ConfigureMailServer.testSMTPServer(ConfigureMailServer.java:130) ~[atlassian-bamboo-web-9.6.6.jar:?]
      	at com.atlassian.bamboo.ww2.actions.admin.mail.ConfigureMailServer.edit(ConfigureMailServer.java:105) ~[atlassian-bamboo-web-9.6.6.jar:?]
      

      Workaround

      Move below JAR files from <bamboo-install>/atlassian-bamboo/WEB-INF/lib to <bamboo-install>/lib along with javax.mail-X.X.X.jar and javax.mail-api-X.X.X.jar

      • javax.activation-X.X.X.jar
      • javax.activation-api-X.X.X.jar

            Assignee:
            Mateusz Szmal
            Reporter:
            Venkata Sateesh Pentela
            Votes:
            0 Vote for this issue
            Watchers:
            1 Start watching this issue

              Created:
              Updated:
              Resolved: