JIRA WebListener Plugin

Whilst JIRA is a Java based issue tracking system, not everyone who runs it using java in their day-to-day IT lives, they may be using .NET, Python, Ruby, or any number of disparate technologies.

Awhile ago an associate who works for a .NET shop was investigating JIRA and was interested in its plugins and extensions, but didn't really wish to learn Java, so I came up with a simple solution.

Using the WebListener extension is simple:

  1. Copy the jar to <JIRA_HOME>\atlassian-jira\WEB-INF\lib
  2. Restart JIRA
  3. Login as an admin user, and add the class com.talios.jira.xml.WebListener as a listener
  4. Enter a URL to receive an HTTP POST
  5. Enter the URL of your JIRA install (this is a hack which I hope to remove shortly).

From now on, whenever anyone does anything to an issue, an XML version of the event is sent to the configured URL by an HTTP POST with one field "event".

The XML looks something like:

<event work-flow-id="0">
<id>10101</id>
<key>TEST-15</key>
<summary>Test issue</summary>
<environment>Linux</environment>
<description>This is a test</description>
<link>http://http://localhost:8080//secure/ViewIssue.jspa?key=TEST-15</link>
<created>2005-02-19 15:33:17.662</created>
<updated>2005-02-19 15:33:17.662</updated>
<priority id="1">Major</priority>
<status id="1">Open</status>
<type id="3">New Feature</type>
<reporter>
<username>amrk</username>
<fullname>Mark Derricutt</fullname>
<email>mark@talios.com</email>
</reporter>
</event>

Now you're free to implement a handler of this in any language you wish.

The latest code ( licenced under the Apache 2.0 licence ) and binary can be currently found on my build server or attached to this page.

Note: The plugin is written against JIRA 3.1, and is implemented (currently) only to respond to the workflowEvent() method.

Labels

 
(None)
  1. Sep 21, 2005

    Jonathan Nolen says:

    Unless anyone objects, I would like to move this page into the JIRAEXT: space wi...

    Unless anyone objects, I would like to move this page into the JIRA Extensions space with the other JIRA plugins. Mark, is that OK with you?