Need to include functionality after any type of editing issue.

After any type of editing issue(Normal Edit,Quick Edit,Inline Edit,SOAP Edit,REST Edit), I need to execute a

functionality immediately when update button is pressed.

How can we achieve this using Events/Listeners?

2 answers

1 accepted

Listeners sometimes are not getting called if I do no changes to the form, but required to get called.

e.g: If a customfield is selected then it should create an issue and link with the current issue.

       If I delete that link and simply updated the edit form, then listener should be invoked and it should again create a new issue and link with the current issue.

       but this is not happening with the listeners approach.

Sometimes listeners are getting called(because it is based on ISSUE_UPDATED event) when they is no requirement of call.

e.g: For Issue tab panels change and updations, it is getting called.

      this is unneccessarily happening with listeners approach.

Hence I choose the method in for edit, quickedit and inline edit. Although this is little clumpsy, we can perform our expected results if well documented. 

1 vote

Events are fired as a post-function on a transition or action.

To use this, write a listener that picks up the event(s) in question and runs your functionality.

Thanks Nic,

I tried to use Listener on Edit action in the following way

package com.mycompany.jira.plugins;

import com.atlassian.jira.event.issue.IssueEvent;

import org.springframework.beans.factory.DisposableBean;

import org.springframework.beans.factory.InitializingBean;

import com.atlassian.event.api.EventPublisher;

import com.atlassian.jira.event.type.EventType;

import com.atlassian.jira.issue.MutableIssue;

import com.atlassian.event.api.EventListener;

public class GlobalEditPostFunction implements InitializingBean,DisposableBean


private final EventPublisher eventPublisher;

public GlobalEditPostFunction(EventPublisher eventPublisher)





* Called when the plugin has been enabled.

* @throws Exception



public void afterPropertiesSet() throws Exception


// register ourselves with the EventPublisher




* Called when the plugin is being disabled or removed.

* @throws Exception



public void destroy() throws Exception


// unregister ourselves with the EventPublisher




public void onIssueEvent(IssueEvent issueEvent)


Long eventTypeId = issueEvent.getEventTypeId();

MutableIssue issue = (MutableIssue)issueEvent.getIssue();




System.out.println("Issue Testing");




But no changes are seen on console i.e. Sys out

Well, that's basically a copy of the code at with a renamed class (I'd suggest changing that name a bit as it implies it's a post-function to me, although it's clearly not when you read it)

As you're not getting "Test" in your output, that implies it's not running at all, so you need to debug why. Check that the listener is loading ok at Jira startup, check it's enabled, and check that you've added and configured it correctly.

yes Nic, The plugin installed and enabled successfully and also I placed Sysout stmts

in afterPropertiesSet() and in destroy() , they are executed well;but not in onIssueEvent() method

I guess the EventListener is not called in the plugin.

Have you cycled through a range of events for an issue? Create, edit, resolve? (Just a handful of the core ones is a good enough test)

Does your log file really contain absolutely nothing from the listener at all?

Yes the log and cmd prompt donot contain any sysouts.

Sorry, did you cycle through some edits/transitions on issues?

Yes, I checked with transitions as well as edit operation in different ways but it does not show any

effect in logs

Are you 100% sure you have configured the listener to execute?

If you are, then I'm completely stumped, as that code works perfectly for me here.

Hi NIc,

Now it is working for me by adding <Export-Package>...</Export-Package> in


Ahh, well spotted. I guess mine was working fine because I hadn't removed that line!

Suggest an answer

Log in or Join to answer
Community showcase
Louis De Jaeger
Posted Thursday in Off-topic

Friday fun: your best joke

Hi all Lets make this Friday fun really fun and post one (or more) of your best jokes! The joke can be about an Atlassian product, or just a really fun joke you want to share! I’m not the best j...

187 views 12 3
Join discussion

Atlassian User Groups

Connect with like-minded Atlassian users at free events near you!

Find a group

Connect with like-minded Atlassian users at free events near you!

Find my local user group

Unfortunately there are no AUG chapters near you at the moment.

Start an AUG

You're one step closer to meeting fellow Atlassian users at your local meet up. Learn more about AUGs

Groups near you
Atlassian Team Tour

Join us on the Team Tour

We're bringing product updates and pro tips on teamwork to ten cities around the world.

Save your spot