org.apache.velocity.exception.MethodInvocationException: Invocation of method 'getCustomFieldValue' in class com.atlassian.jira.mail.TemplateIssue threw exception class java.lang.IllegalStateException : No implementation has been registered for this tenant, and there's no creator to create it at org.apache.velocity.runtime.parser.node.ASTMethod.execute(ASTMethod.java:251)

Atlassian JIRA | David Corley | 5 years ago
  1. 0

    In the last two weeks with both Jira 4.2.2 and Jira 4.3.4, we've seen an issue where a user has received the following stacktrace in a mail from Jira: {noformat} An error occurred whilst rendering this message. Please contact the administrators, and inform them of this bug. Details: ------- org.apache.velocity.exception.MethodInvocationException: Invocation of method 'getCustomFieldValue' in class com.atlassian.jira.mail.TemplateIssue threw exception class java.lang.IllegalStateException : No implementation has been registered for this tenant, and there's no creator to create it at org.apache.velocity.runtime.parser.node.ASTMethod.execute(ASTMethod.java:251) at org.apache.velocity.runtime.parser.node.ASTReference.execute(ASTReference.java:175) at org.apache.velocity.runtime.parser.node.ASTReference.evaluate(ASTReference.java:307) at org.apache.velocity.runtime.parser.node.ASTExpression.evaluate(ASTExpression.java:45) at org.apache.velocity.runtime.parser.node.ASTIfStatement.render(ASTIfStatement.java:68) at org.apache.velocity.runtime.parser.node.SimpleNode.render(SimpleNode.java:230) at org.apache.velocity.runtime.directive.Parse.render(Parse.java:181) at org.apache.velocity.runtime.parser.node.ASTDirective.render(ASTDirective.java:114) at org.apache.velocity.runtime.parser.node.SimpleNode.render(SimpleNode.java:230) at org.apache.velocity.app.VelocityEngine.evaluate(VelocityEngine.java:300) at org.apache.velocity.app.VelocityEngine.evaluate(VelocityEngine.java:202) at com.atlassian.velocity.DefaultVelocityManager.getEncodedBodyForContent(DefaultVelocityManager.java:143) at com.atlassian.jira.mail.MailingListCompiler$1.processRecipient(MailingListCompiler.java:289) at com.atlassian.jira.mail.NotificationRecipientProcessor.process(NotificationRecipientProcessor.java:39) at com.atlassian.jira.mail.MailingListCompiler.addMailsToQueue(MailingListCompiler.java:311) at com.atlassian.jira.mail.MailingListCompiler.access$400(MailingListCompiler.java:36) at com.atlassian.jira.mail.MailingListCompiler$NotificationCompiler.addEmailsToQueue(MailingListCompiler.java:456) at com.atlassian.jira.mail.MailingListCompiler$NotificationCompiler.sendLists(MailingListCompiler.java:426) at com.atlassian.jira.mail.MailingListCompiler$NotificationCompiler.sendForEvent(MailingListCompiler.java:379) at com.atlassian.jira.mail.MailingListCompiler.sendLists(MailingListCompiler.java:129) at com.atlassian.jira.mail.IssueMailQueueItem.send(IssueMailQueueItem.java:151) at com.atlassian.mail.queue.MailQueueImpl.sendBuffer(MailQueueImpl.java:66) at com.atlassian.jira.service.services.mail.MailQueueService.run(MailQueueService.java:23) at com.atlassian.jira.service.services.mail.MailQueueService.destroy(MailQueueService.java:43) at com.atlassian.jira.service.JiraServiceContainerImpl.destroy(JiraServiceContainerImpl.java:96) at com.atlassian.jira.upgrade.ConsistencyCheckImpl.destroy(ConsistencyCheckImpl.java:68) at com.atlassian.jira.upgrade.ConsistencyLauncher.stop(ConsistencyLauncher.java:85) at com.atlassian.jira.startup.DefaultJiraLauncher.stop(DefaultJiraLauncher.java:51) at com.atlassian.jira.startup.LauncherContextListener$2.destroy(LauncherContextListener.java:69) at com.atlassian.jira.startup.LauncherContextListener$2.destroy(LauncherContextListener.java:62) at com.atlassian.multitenant.impl.MultiTenantComponentMapImpl.onTenantStop(MultiTenantComponentMapImpl.java:177) at com.atlassian.multitenant.impl.DefaultMultiTenantManager$2.consume(DefaultMultiTenantManager.java:169) at com.atlassian.multitenant.impl.DefaultMultiTenantManager$2.consume(DefaultMultiTenantManager.java:164) at com.atlassian.multitenant.impl.DefaultMultiTenantManager.runForEachListener(DefaultMultiTenantManager.java:256) at com.atlassian.multitenant.impl.DefaultMultiTenantManager.stopTenant(DefaultMultiTenantManager.java:163) at com.atlassian.multitenant.impl.DefaultMultiTenantManager.stopAll(DefaultMultiTenantManager.java:211) at com.atlassian.jira.startup.LauncherContextListener.contextDestroyed(LauncherContextListener.java:136) at org.apache.catalina.core.StandardContext.listenerStop(StandardContext.java:4244) at org.apache.catalina.core.StandardContext.stop(StandardContext.java:4879) at org.apache.catalina.core.ContainerBase.stop(ContainerBase.java:1106) at org.apache.catalina.core.ContainerBase.stop(ContainerBase.java:1106) at org.apache.catalina.core.StandardEngine.stop(StandardEngine.java:468) at org.apache.catalina.core.StandardService.stop(StandardService.java:604) at org.apache.catalina.core.StandardServer.stop(StandardServer.java:788) at org.apache.catalina.startup.Catalina.stop(Catalina.java:662) at org.apache.catalina.startup.Catalina.start(Catalina.java:629) at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39) at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25) at java.lang.reflect.Method.invoke(Method.java:597) at org.apache.catalina.startup.Bootstrap.start(Bootstrap.java:289) at org.apache.catalina.startup.Bootstrap.main(Bootstrap.java:414) {noformat} The reason it happened is pretty obvious. The server was in the process of shutting down on both occasions. I think Jira should be a little smarter, and do one of two things: 1. If a shutdown signal is received by Jira, place all mail in the queue instead of sending, and flush the queue on Jira startup 2. Ignore the mail completely

    Atlassian JIRA | 5 years ago | David Corley
    org.apache.velocity.exception.MethodInvocationException: Invocation of method 'getCustomFieldValue' in class com.atlassian.jira.mail.TemplateIssue threw exception class java.lang.IllegalStateException : No implementation has been registered for this tenant, and there's no creator to create it at org.apache.velocity.runtime.parser.node.ASTMethod.execute(ASTMethod.java:251)
  2. 0

    In the last two weeks with both Jira 4.2.2 and Jira 4.3.4, we've seen an issue where a user has received the following stacktrace in a mail from Jira: {noformat} An error occurred whilst rendering this message. Please contact the administrators, and inform them of this bug. Details: ------- org.apache.velocity.exception.MethodInvocationException: Invocation of method 'getCustomFieldValue' in class com.atlassian.jira.mail.TemplateIssue threw exception class java.lang.IllegalStateException : No implementation has been registered for this tenant, and there's no creator to create it at org.apache.velocity.runtime.parser.node.ASTMethod.execute(ASTMethod.java:251) at org.apache.velocity.runtime.parser.node.ASTReference.execute(ASTReference.java:175) at org.apache.velocity.runtime.parser.node.ASTReference.evaluate(ASTReference.java:307) at org.apache.velocity.runtime.parser.node.ASTExpression.evaluate(ASTExpression.java:45) at org.apache.velocity.runtime.parser.node.ASTIfStatement.render(ASTIfStatement.java:68) at org.apache.velocity.runtime.parser.node.SimpleNode.render(SimpleNode.java:230) at org.apache.velocity.runtime.directive.Parse.render(Parse.java:181) at org.apache.velocity.runtime.parser.node.ASTDirective.render(ASTDirective.java:114) at org.apache.velocity.runtime.parser.node.SimpleNode.render(SimpleNode.java:230) at org.apache.velocity.app.VelocityEngine.evaluate(VelocityEngine.java:300) at org.apache.velocity.app.VelocityEngine.evaluate(VelocityEngine.java:202) at com.atlassian.velocity.DefaultVelocityManager.getEncodedBodyForContent(DefaultVelocityManager.java:143) at com.atlassian.jira.mail.MailingListCompiler$1.processRecipient(MailingListCompiler.java:289) at com.atlassian.jira.mail.NotificationRecipientProcessor.process(NotificationRecipientProcessor.java:39) at com.atlassian.jira.mail.MailingListCompiler.addMailsToQueue(MailingListCompiler.java:311) at com.atlassian.jira.mail.MailingListCompiler.access$400(MailingListCompiler.java:36) at com.atlassian.jira.mail.MailingListCompiler$NotificationCompiler.addEmailsToQueue(MailingListCompiler.java:456) at com.atlassian.jira.mail.MailingListCompiler$NotificationCompiler.sendLists(MailingListCompiler.java:426) at com.atlassian.jira.mail.MailingListCompiler$NotificationCompiler.sendForEvent(MailingListCompiler.java:379) at com.atlassian.jira.mail.MailingListCompiler.sendLists(MailingListCompiler.java:129) at com.atlassian.jira.mail.IssueMailQueueItem.send(IssueMailQueueItem.java:151) at com.atlassian.mail.queue.MailQueueImpl.sendBuffer(MailQueueImpl.java:66) at com.atlassian.jira.service.services.mail.MailQueueService.run(MailQueueService.java:23) at com.atlassian.jira.service.services.mail.MailQueueService.destroy(MailQueueService.java:43) at com.atlassian.jira.service.JiraServiceContainerImpl.destroy(JiraServiceContainerImpl.java:96) at com.atlassian.jira.upgrade.ConsistencyCheckImpl.destroy(ConsistencyCheckImpl.java:68) at com.atlassian.jira.upgrade.ConsistencyLauncher.stop(ConsistencyLauncher.java:85) at com.atlassian.jira.startup.DefaultJiraLauncher.stop(DefaultJiraLauncher.java:51) at com.atlassian.jira.startup.LauncherContextListener$2.destroy(LauncherContextListener.java:69) at com.atlassian.jira.startup.LauncherContextListener$2.destroy(LauncherContextListener.java:62) at com.atlassian.multitenant.impl.MultiTenantComponentMapImpl.onTenantStop(MultiTenantComponentMapImpl.java:177) at com.atlassian.multitenant.impl.DefaultMultiTenantManager$2.consume(DefaultMultiTenantManager.java:169) at com.atlassian.multitenant.impl.DefaultMultiTenantManager$2.consume(DefaultMultiTenantManager.java:164) at com.atlassian.multitenant.impl.DefaultMultiTenantManager.runForEachListener(DefaultMultiTenantManager.java:256) at com.atlassian.multitenant.impl.DefaultMultiTenantManager.stopTenant(DefaultMultiTenantManager.java:163) at com.atlassian.multitenant.impl.DefaultMultiTenantManager.stopAll(DefaultMultiTenantManager.java:211) at com.atlassian.jira.startup.LauncherContextListener.contextDestroyed(LauncherContextListener.java:136) at org.apache.catalina.core.StandardContext.listenerStop(StandardContext.java:4244) at org.apache.catalina.core.StandardContext.stop(StandardContext.java:4879) at org.apache.catalina.core.ContainerBase.stop(ContainerBase.java:1106) at org.apache.catalina.core.ContainerBase.stop(ContainerBase.java:1106) at org.apache.catalina.core.StandardEngine.stop(StandardEngine.java:468) at org.apache.catalina.core.StandardService.stop(StandardService.java:604) at org.apache.catalina.core.StandardServer.stop(StandardServer.java:788) at org.apache.catalina.startup.Catalina.stop(Catalina.java:662) at org.apache.catalina.startup.Catalina.start(Catalina.java:629) at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39) at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25) at java.lang.reflect.Method.invoke(Method.java:597) at org.apache.catalina.startup.Bootstrap.start(Bootstrap.java:289) at org.apache.catalina.startup.Bootstrap.main(Bootstrap.java:414) {noformat} The reason it happened is pretty obvious. The server was in the process of shutting down on both occasions. I think Jira should be a little smarter, and do one of two things: 1. If a shutdown signal is received by Jira, place all mail in the queue instead of sending, and flush the queue on Jira startup 2. Ignore the mail completely

    Atlassian JIRA | 5 years ago | David Corley
    org.apache.velocity.exception.MethodInvocationException: Invocation of method 'getCustomFieldValue' in class com.atlassian.jira.mail.TemplateIssue threw exception class java.lang.IllegalStateException : No implementation has been registered for this tenant, and there's no creator to create it at org.apache.velocity.runtime.parser.node.ASTMethod.execute(ASTMethod.java:251)
  3. 0

    Somehow, an email notification from JIRA was sent after a shutdown of the app was initiated. This resulted in me receiving an email containing a stack trace: {noformat} An error occurred whilst rendering this message. Please contact the administrators, and inform them of this bug. Details: ------- org.apache.velocity.exception.MethodInvocationException: Invocation of method 'formatUser' in class com.atlassian.jira.plugin.profile.DefaultUserFormatManager threw exception class java.lang.IllegalStateException : No implementation has been registered for this tenant, and there's no creator to create it at org.apache.velocity.runtime.parser.node.ASTMethod.execute(ASTMethod.java:251) at org.apache.velocity.runtime.parser.node.ASTReference.execute(ASTReference.java:175) at org.apache.velocity.runtime.parser.node.ASTReference.render(ASTReference.java:220) at org.apache.velocity.runtime.parser.node.ASTBlock.render(ASTBlock.java:55) at org.apache.velocity.runtime.parser.node.ASTIfStatement.render(ASTIfStatement.java:70) at org.apache.velocity.runtime.parser.node.SimpleNode.render(SimpleNode.java:230) at org.apache.velocity.runtime.directive.VelocimacroProxy.render(VelocimacroProxy.java:171) at org.apache.velocity.runtime.parser.node.ASTDirective.render(ASTDirective.java:114) at org.apache.velocity.runtime.parser.node.ASTBlock.render(ASTBlock.java:55) at org.apache.velocity.runtime.parser.node.ASTIfStatement.render(ASTIfStatement.java:70) at org.apache.velocity.runtime.parser.node.SimpleNode.render(SimpleNode.java:230) at org.apache.velocity.runtime.directive.Parse.render(Parse.java:181) at org.apache.velocity.runtime.parser.node.ASTDirective.render(ASTDirective.java:114) at org.apache.velocity.runtime.parser.node.SimpleNode.render(SimpleNode.java:230) at org.apache.velocity.app.VelocityEngine.evaluate(VelocityEngine.java:300) at org.apache.velocity.app.VelocityEngine.evaluate(VelocityEngine.java:202) at com.atlassian.velocity.DefaultVelocityManager.getEncodedBodyForContent(DefaultVelocityManager.java:143) at com.atlassian.jira.mail.MailingListCompiler$1.processRecipient(MailingListCompiler.java:289) at com.atlassian.jira.mail.NotificationRecipientProcessor.process(NotificationRecipientProcessor.java:39) at com.atlassian.jira.mail.MailingListCompiler.addMailsToQueue(MailingListCompiler.java:311) at com.atlassian.jira.mail.MailingListCompiler.access$400(MailingListCompiler.java:36) at com.atlassian.jira.mail.MailingListCompiler$NotificationCompiler.addEmailsToQueue(MailingListCompiler.java:456) at com.atlassian.jira.mail.MailingListCompiler$NotificationCompiler.sendLists(MailingListCompiler.java:426) at com.atlassian.jira.mail.MailingListCompiler$NotificationCompiler.sendForEvent(MailingListCompiler.java:379) at com.atlassian.jira.mail.MailingListCompiler.sendLists(MailingListCompiler.java:129) at com.atlassian.jira.mail.IssueMailQueueItem.send(IssueMailQueueItem.java:151) at com.atlassian.mail.queue.MailQueueImpl.sendBuffer(MailQueueImpl.java:66) at com.atlassian.jira.service.services.mail.MailQueueService.run(MailQueueService.java:23) at com.atlassian.jira.service.services.mail.MailQueueService.destroy(MailQueueService.java:43) at com.atlassian.jira.service.JiraServiceContainerImpl.destroy(JiraServiceContainerImpl.java:96) at com.atlassian.jira.upgrade.ConsistencyCheckImpl.destroy(ConsistencyCheckImpl.java:68) at com.atlassian.jira.upgrade.ConsistencyLauncher.stop(ConsistencyLauncher.java:85) at com.atlassian.jira.startup.DefaultJiraLauncher.stop(DefaultJiraLauncher.java:51) at com.atlassian.jira.startup.LauncherContextListener$2.destroy(LauncherContextListener.java:69) at com.atlassian.jira.startup.LauncherContextListener$2.destroy(LauncherContextListener.java:62) at com.atlassian.multitenant.impl.MultiTenantComponentMapImpl.onTenantStop(MultiTenantComponentMapImpl.java:177) at com.atlassian.multitenant.impl.DefaultMultiTenantManager$2.consume(DefaultMultiTenantManager.java:169) at com.atlassian.multitenant.impl.DefaultMultiTenantManager$2.consume(DefaultMultiTenantManager.java:164) at com.atlassian.multitenant.impl.DefaultMultiTenantManager.runForEachListener(DefaultMultiTenantManager.java:256) at com.atlassian.multitenant.impl.DefaultMultiTenantManager.stopTenant(DefaultMultiTenantManager.java:163) at com.atlassian.multitenant.impl.DefaultMultiTenantManager.stopAll(DefaultMultiTenantManager.java:211) at com.atlassian.jira.startup.LauncherContextListener.contextDestroyed(LauncherContextListener.java:136) at org.apache.catalina.core.StandardContext.listenerStop(StandardContext.java:3805) at org.apache.catalina.core.StandardContext.stop(StandardContext.java:4357) at org.apache.catalina.core.ContainerBase.removeChild(ContainerBase.java:893) at org.apache.catalina.startup.HostConfig.undeployApps(HostConfig.java:1180) at org.apache.catalina.startup.HostConfig.stop(HostConfig.java:1151) at org.apache.catalina.startup.HostConfig.lifecycleEvent(HostConfig.java:313) at org.apache.catalina.util.LifecycleSupport.fireLifecycleEvent(LifecycleSupport.java:120) at org.apache.catalina.core.ContainerBase.stop(ContainerBase.java:1055) at org.apache.catalina.core.ContainerBase.stop(ContainerBase.java:1067) at org.apache.catalina.core.StandardEngine.stop(StandardEngine.java:448) at org.apache.catalina.core.StandardService.stop(StandardService.java:510) at org.apache.catalina.core.StandardServer.stop(StandardServer.java:734) at org.apache.catalina.startup.Catalina.stop(Catalina.java:602) at org.apache.catalina.startup.Catalina$CatalinaShutdownHook.run(Catalina.java:645) {noformat} For one thing, emails should not be sent after a shutdown has started (or, alternately, the shutdown process should wait for queued notifications to be flushed). Secondly, if an error occurs while rendering an email, we could probably do better than emailing the recipient an ugly stack trace. See the attached screen shot for how this appears to the end user.

    Atlassian JIRA | 5 years ago | Tim Moore [Atlassian]
    org.apache.velocity.exception.MethodInvocationException: Invocation of method 'formatUser' in class com.atlassian.jira.plugin.profile.DefaultUserFormatManager threw exception class java.lang.IllegalStateException : No implementation has been registered for this tenant, and there's no creator to create it
  4. Speed up your debug routine!

    Automated exception search integrated into your IDE

  5. 0

    Somehow, an email notification from JIRA was sent after a shutdown of the app was initiated. This resulted in me receiving an email containing a stack trace: {noformat} An error occurred whilst rendering this message. Please contact the administrators, and inform them of this bug. Details: ------- org.apache.velocity.exception.MethodInvocationException: Invocation of method 'formatUser' in class com.atlassian.jira.plugin.profile.DefaultUserFormatManager threw exception class java.lang.IllegalStateException : No implementation has been registered for this tenant, and there's no creator to create it at org.apache.velocity.runtime.parser.node.ASTMethod.execute(ASTMethod.java:251) at org.apache.velocity.runtime.parser.node.ASTReference.execute(ASTReference.java:175) at org.apache.velocity.runtime.parser.node.ASTReference.render(ASTReference.java:220) at org.apache.velocity.runtime.parser.node.ASTBlock.render(ASTBlock.java:55) at org.apache.velocity.runtime.parser.node.ASTIfStatement.render(ASTIfStatement.java:70) at org.apache.velocity.runtime.parser.node.SimpleNode.render(SimpleNode.java:230) at org.apache.velocity.runtime.directive.VelocimacroProxy.render(VelocimacroProxy.java:171) at org.apache.velocity.runtime.parser.node.ASTDirective.render(ASTDirective.java:114) at org.apache.velocity.runtime.parser.node.ASTBlock.render(ASTBlock.java:55) at org.apache.velocity.runtime.parser.node.ASTIfStatement.render(ASTIfStatement.java:70) at org.apache.velocity.runtime.parser.node.SimpleNode.render(SimpleNode.java:230) at org.apache.velocity.runtime.directive.Parse.render(Parse.java:181) at org.apache.velocity.runtime.parser.node.ASTDirective.render(ASTDirective.java:114) at org.apache.velocity.runtime.parser.node.SimpleNode.render(SimpleNode.java:230) at org.apache.velocity.app.VelocityEngine.evaluate(VelocityEngine.java:300) at org.apache.velocity.app.VelocityEngine.evaluate(VelocityEngine.java:202) at com.atlassian.velocity.DefaultVelocityManager.getEncodedBodyForContent(DefaultVelocityManager.java:143) at com.atlassian.jira.mail.MailingListCompiler$1.processRecipient(MailingListCompiler.java:289) at com.atlassian.jira.mail.NotificationRecipientProcessor.process(NotificationRecipientProcessor.java:39) at com.atlassian.jira.mail.MailingListCompiler.addMailsToQueue(MailingListCompiler.java:311) at com.atlassian.jira.mail.MailingListCompiler.access$400(MailingListCompiler.java:36) at com.atlassian.jira.mail.MailingListCompiler$NotificationCompiler.addEmailsToQueue(MailingListCompiler.java:456) at com.atlassian.jira.mail.MailingListCompiler$NotificationCompiler.sendLists(MailingListCompiler.java:426) at com.atlassian.jira.mail.MailingListCompiler$NotificationCompiler.sendForEvent(MailingListCompiler.java:379) at com.atlassian.jira.mail.MailingListCompiler.sendLists(MailingListCompiler.java:129) at com.atlassian.jira.mail.IssueMailQueueItem.send(IssueMailQueueItem.java:151) at com.atlassian.mail.queue.MailQueueImpl.sendBuffer(MailQueueImpl.java:66) at com.atlassian.jira.service.services.mail.MailQueueService.run(MailQueueService.java:23) at com.atlassian.jira.service.services.mail.MailQueueService.destroy(MailQueueService.java:43) at com.atlassian.jira.service.JiraServiceContainerImpl.destroy(JiraServiceContainerImpl.java:96) at com.atlassian.jira.upgrade.ConsistencyCheckImpl.destroy(ConsistencyCheckImpl.java:68) at com.atlassian.jira.upgrade.ConsistencyLauncher.stop(ConsistencyLauncher.java:85) at com.atlassian.jira.startup.DefaultJiraLauncher.stop(DefaultJiraLauncher.java:51) at com.atlassian.jira.startup.LauncherContextListener$2.destroy(LauncherContextListener.java:69) at com.atlassian.jira.startup.LauncherContextListener$2.destroy(LauncherContextListener.java:62) at com.atlassian.multitenant.impl.MultiTenantComponentMapImpl.onTenantStop(MultiTenantComponentMapImpl.java:177) at com.atlassian.multitenant.impl.DefaultMultiTenantManager$2.consume(DefaultMultiTenantManager.java:169) at com.atlassian.multitenant.impl.DefaultMultiTenantManager$2.consume(DefaultMultiTenantManager.java:164) at com.atlassian.multitenant.impl.DefaultMultiTenantManager.runForEachListener(DefaultMultiTenantManager.java:256) at com.atlassian.multitenant.impl.DefaultMultiTenantManager.stopTenant(DefaultMultiTenantManager.java:163) at com.atlassian.multitenant.impl.DefaultMultiTenantManager.stopAll(DefaultMultiTenantManager.java:211) at com.atlassian.jira.startup.LauncherContextListener.contextDestroyed(LauncherContextListener.java:136) at org.apache.catalina.core.StandardContext.listenerStop(StandardContext.java:3805) at org.apache.catalina.core.StandardContext.stop(StandardContext.java:4357) at org.apache.catalina.core.ContainerBase.removeChild(ContainerBase.java:893) at org.apache.catalina.startup.HostConfig.undeployApps(HostConfig.java:1180) at org.apache.catalina.startup.HostConfig.stop(HostConfig.java:1151) at org.apache.catalina.startup.HostConfig.lifecycleEvent(HostConfig.java:313) at org.apache.catalina.util.LifecycleSupport.fireLifecycleEvent(LifecycleSupport.java:120) at org.apache.catalina.core.ContainerBase.stop(ContainerBase.java:1055) at org.apache.catalina.core.ContainerBase.stop(ContainerBase.java:1067) at org.apache.catalina.core.StandardEngine.stop(StandardEngine.java:448) at org.apache.catalina.core.StandardService.stop(StandardService.java:510) at org.apache.catalina.core.StandardServer.stop(StandardServer.java:734) at org.apache.catalina.startup.Catalina.stop(Catalina.java:602) at org.apache.catalina.startup.Catalina$CatalinaShutdownHook.run(Catalina.java:645) {noformat} For one thing, emails should not be sent after a shutdown has started (or, alternately, the shutdown process should wait for queued notifications to be flushed). Secondly, if an error occurs while rendering an email, we could probably do better than emailing the recipient an ugly stack trace. See the attached screen shot for how this appears to the end user.

    Atlassian JIRA | 5 years ago | Tim Moore [Atlassian]
    org.apache.velocity.exception.MethodInvocationException: Invocation of method 'formatUser' in class com.atlassian.jira.plugin.profile.DefaultUserFormatManager threw exception class java.lang.IllegalStateException : No implementation has been registered for this tenant, and there's no creator to create it
  6. 0

    There is a small typo in the Danish Translation ( ']' instead of '}'), that is causing a large error when viewing emails in danish: {code} 2006-05-08 12:32:46,925 ERROR [velocity] Method getText threw exception for reference $i18n in template templates/email/html/includes/footer.vm at [13,11] 2006-05-08 12:32:46,925 ERROR [com.atlassian.velocity.DefaultVelocityManager] Exception getting message body from Velocity: org.apache.velocity.exception.MethodInvocationException: Invocation of method 'getText' in class com.atlassian.jira.web.bean.I18nBean threw exception class java.lang.IllegalArgumentException : Unmatched braces in the pattern. org.apache.velocity.exception.MethodInvocationException: Invocation of method 'getText' in class com.atlassian.jira.web.bean.I18nBean threw exception class java.lang.IllegalArgumentException : Unmatched braces in the pattern. at org.apache.velocity.runtime.parser.node.ASTMethod.execute(ASTMethod.java:246) at org.apache.velocity.runtime.parser.node.ASTReference.execute(ASTReference.java:175) at org.apache.velocity.runtime.parser.node.ASTReference.render(ASTReference.java:220) at org.apache.velocity.runtime.parser.node.ASTBlock.render(ASTBlock.java:55) at org.apache.velocity.runtime.parser.node.ASTIfStatement.render(ASTIfStatement.java:70) at org.apache.velocity.runtime.parser.node.SimpleNode.render(SimpleNode.java:230) at org.apache.velocity.runtime.directive.Parse.render(Parse.java:181) at org.apache.velocity.runtime.parser.node.ASTDirective.render(ASTDirective.java:114) at org.apache.velocity.runtime.parser.node.SimpleNode.render(SimpleNode.java:230) at org.apache.velocity.app.VelocityEngine.evaluate(VelocityEngine.java:316) at org.apache.velocity.app.VelocityEngine.evaluate(VelocityEngine.java:210) at com.atlassian.velocity.DefaultVelocityManager.getEncodedBodyForContent(DefaultVelocityManager.java:137) at com.atlassian.jira.mail.MailingListCompiler.addMailsToQueue(MailingListCompiler.java:224) at com.atlassian.jira.mail.MailingListCompiler.sendLists(MailingListCompiler.java:135) at com.atlassian.jira.mail.MailingListCompiler.sendLists(MailingListCompiler.java:110) at com.atlassian.jira.mail.IssueMailQueueItem.send(IssueMailQueueItem.java:167) at com.atlassian.mail.queue.MailQueueImpl.sendBuffer(MailQueueImpl.java:68) at com.atlassian.jira.web.action.admin.MailQueueAdmin.doExecute(MailQueueAdmin.java:38) at webwork.action.ActionSupport.execute(ActionSupport.java:153) at com.atlassian.jira.action.JiraActionSupport.execute(JiraActionSupport.java:58) at webwork.dispatcher.GenericDispatcher.executeAction(GenericDispatcher.java:132) at com.atlassian.jira.web.dispatcher.JiraServletDispatcher.service(JiraServletDispatcher.java:178) at javax.servlet.http.HttpServlet.service(HttpServlet.java:802) at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:252) at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:173) at com.atlassian.jira.web.filters.AccessLogFilter.doFilter(AccessLogFilter.java:51) at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:202) at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:173) at com.opensymphony.module.sitemesh.filter.PageFilter.parsePage(PageFilter.java:119) at com.opensymphony.module.sitemesh.filter.PageFilter.doFilter(PageFilter.java:55) at com.atlassian.jira.web.filters.SitemeshExcludePathFilter.doFilter(SitemeshExcludePathFilter.java:38) at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:202) at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:173) at com.atlassian.seraph.filter.SecurityFilter.doFilter(SecurityFilter.java:182) at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:202) at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:173) at com.atlassian.seraph.filter.LoginFilter.doFilter(LoginFilter.java:177) at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:202) at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:173) at com.atlassian.util.profiling.filters.ProfilingFilter.doFilter(ProfilingFilter.java:132) at com.atlassian.jira.web.filters.ProfilingAndErrorFilter.doFilter(ProfilingAndErrorFilter.java:25) at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:202) at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:173) at com.atlassian.jira.web.filters.ActionCleanupDelayFilter.doFilter(ActionCleanupDelayFilter.java:39) at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:202) at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:173) at com.atlassian.johnson.filters.JohnsonFilter.doFilter(JohnsonFilter.java:91) at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:202) at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:173) at com.atlassian.jira.web.filters.gzip.GzipFilter.doFilter(GzipFilter.java:72) at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:202) at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:173) at com.atlassian.core.filters.AbstractEncodingFilter.doFilter(AbstractEncodingFilter.java:37) at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:202) at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:173) at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:213) at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:178) at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:126) at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:105) at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:107) at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:148) at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:856) at org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.processConnection(Http11Protocol.java:744) at org.apache.tomcat.util.net.PoolTcpEndpoint.processSocket(PoolTcpEndpoint.java:527) at org.apache.tomcat.util.net.LeaderFollowerWorkerThread.runIt(LeaderFollowerWorkerThread.java:80) at org.apache.tomcat.util.threads.ThreadPool$ControlRunnable.run(ThreadPool.java:684) at java.lang.Thread.run(Thread.java:534) {code}

    Atlassian JIRA | 1 decade ago | Brian Nguyen (HipChat)
    org.apache.velocity.exception.MethodInvocationException: Invocation of method 'getText' in class com.atlassian.jira.web.bean.I18nBean threw exception class java.lang.IllegalArgumentException : Unmatched braces in the pattern.

    Not finding the right solution?
    Take a tour to get the most out of Samebug.

    Tired of useless tips?

    Automated exception search integrated into your IDE

    Root Cause Analysis

    1. org.apache.velocity.exception.MethodInvocationException

      Invocation of method 'getCustomFieldValue' in class com.atlassian.jira.mail.TemplateIssue threw exception class java.lang.IllegalStateException : No implementation has been registered for this tenant, and there's no creator to create it at org.apache.velocity.runtime.parser.node.ASTMethod.execute(ASTMethod.java:251)

      at org.apache.velocity.runtime.parser.node.ASTReference.execute()
    2. Apache Velocity
      VelocityEngine.evaluate
      1. org.apache.velocity.runtime.parser.node.ASTReference.execute(ASTReference.java:175)
      2. org.apache.velocity.runtime.parser.node.ASTReference.evaluate(ASTReference.java:307)
      3. org.apache.velocity.runtime.parser.node.ASTExpression.evaluate(ASTExpression.java:45)
      4. org.apache.velocity.runtime.parser.node.ASTIfStatement.render(ASTIfStatement.java:68)
      5. org.apache.velocity.runtime.parser.node.SimpleNode.render(SimpleNode.java:230)
      6. org.apache.velocity.runtime.directive.Parse.render(Parse.java:181)
      7. org.apache.velocity.runtime.parser.node.ASTDirective.render(ASTDirective.java:114)
      8. org.apache.velocity.runtime.parser.node.SimpleNode.render(SimpleNode.java:230)
      9. org.apache.velocity.app.VelocityEngine.evaluate(VelocityEngine.java:300)
      10. org.apache.velocity.app.VelocityEngine.evaluate(VelocityEngine.java:202)
      10 frames
    3. com.atlassian.velocity
      DefaultVelocityManager.getEncodedBodyForContent
      1. com.atlassian.velocity.DefaultVelocityManager.getEncodedBodyForContent(DefaultVelocityManager.java:143)
      1 frame
    4. com.atlassian.jira
      IssueMailQueueItem.send
      1. com.atlassian.jira.mail.MailingListCompiler$1.processRecipient(MailingListCompiler.java:289)
      2. com.atlassian.jira.mail.NotificationRecipientProcessor.process(NotificationRecipientProcessor.java:39)
      3. com.atlassian.jira.mail.MailingListCompiler.addMailsToQueue(MailingListCompiler.java:311)
      4. com.atlassian.jira.mail.MailingListCompiler.access$400(MailingListCompiler.java:36)
      5. com.atlassian.jira.mail.MailingListCompiler$NotificationCompiler.addEmailsToQueue(MailingListCompiler.java:456)
      6. com.atlassian.jira.mail.MailingListCompiler$NotificationCompiler.sendLists(MailingListCompiler.java:426)
      7. com.atlassian.jira.mail.MailingListCompiler$NotificationCompiler.sendForEvent(MailingListCompiler.java:379)
      8. com.atlassian.jira.mail.MailingListCompiler.sendLists(MailingListCompiler.java:129)
      9. com.atlassian.jira.mail.IssueMailQueueItem.send(IssueMailQueueItem.java:151)
      9 frames
    5. com.atlassian.mail
      MailQueueImpl.sendBuffer
      1. com.atlassian.mail.queue.MailQueueImpl.sendBuffer(MailQueueImpl.java:66)
      1 frame
    6. com.atlassian.jira
      LauncherContextListener$2.destroy
      1. com.atlassian.jira.service.services.mail.MailQueueService.run(MailQueueService.java:23)
      2. com.atlassian.jira.service.services.mail.MailQueueService.destroy(MailQueueService.java:43)
      3. com.atlassian.jira.service.JiraServiceContainerImpl.destroy(JiraServiceContainerImpl.java:96)
      4. com.atlassian.jira.upgrade.ConsistencyCheckImpl.destroy(ConsistencyCheckImpl.java:68)
      5. com.atlassian.jira.upgrade.ConsistencyLauncher.stop(ConsistencyLauncher.java:85)
      6. com.atlassian.jira.startup.DefaultJiraLauncher.stop(DefaultJiraLauncher.java:51)
      7. com.atlassian.jira.startup.LauncherContextListener$2.destroy(LauncherContextListener.java:69)
      8. com.atlassian.jira.startup.LauncherContextListener$2.destroy(LauncherContextListener.java:62)
      8 frames
    7. com.atlassian.multitenant
      DefaultMultiTenantManager.stopAll
      1. com.atlassian.multitenant.impl.MultiTenantComponentMapImpl.onTenantStop(MultiTenantComponentMapImpl.java:177)
      2. com.atlassian.multitenant.impl.DefaultMultiTenantManager$2.consume(DefaultMultiTenantManager.java:169)
      3. com.atlassian.multitenant.impl.DefaultMultiTenantManager$2.consume(DefaultMultiTenantManager.java:164)
      4. com.atlassian.multitenant.impl.DefaultMultiTenantManager.runForEachListener(DefaultMultiTenantManager.java:256)
      5. com.atlassian.multitenant.impl.DefaultMultiTenantManager.stopTenant(DefaultMultiTenantManager.java:163)
      6. com.atlassian.multitenant.impl.DefaultMultiTenantManager.stopAll(DefaultMultiTenantManager.java:211)
      6 frames
    8. com.atlassian.jira
      LauncherContextListener.contextDestroyed
      1. com.atlassian.jira.startup.LauncherContextListener.contextDestroyed(LauncherContextListener.java:136)
      1 frame
    9. Glassfish Core
      Catalina.start
      1. org.apache.catalina.core.StandardContext.listenerStop(StandardContext.java:4244)
      2. org.apache.catalina.core.StandardContext.stop(StandardContext.java:4879)
      3. org.apache.catalina.core.ContainerBase.stop(ContainerBase.java:1106)
      4. org.apache.catalina.core.ContainerBase.stop(ContainerBase.java:1106)
      5. org.apache.catalina.core.StandardEngine.stop(StandardEngine.java:468)
      6. org.apache.catalina.core.StandardService.stop(StandardService.java:604)
      7. org.apache.catalina.core.StandardServer.stop(StandardServer.java:788)
      8. org.apache.catalina.startup.Catalina.stop(Catalina.java:662)
      9. org.apache.catalina.startup.Catalina.start(Catalina.java:629)
      9 frames
    10. Java RT
      Method.invoke
      1. sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
      2. sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
      3. sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
      4. java.lang.reflect.Method.invoke(Method.java:597)
      4 frames
    11. Glassfish Core
      Bootstrap.main
      1. org.apache.catalina.startup.Bootstrap.start(Bootstrap.java:289)
      2. org.apache.catalina.startup.Bootstrap.main(Bootstrap.java:414)
      2 frames