Converting a java plugin to a connect add-on

We have a java plugin (.jar) working on server hosted Jira, which defines a custom field type and processes its value (formats with java .vm templates) in Jira UI.
We would like to integrate all these functionalities to Jira cloud.

So we have investigated the available documentation related to Jira cloud development. According to our understood only a Connect add-on can be uploaded to Jira cloud.  We were able to experiment with a simple Connect add-on example with web UI, upload it to Jira cloud marketplace as a private add-on, generate tokens to use in 'Private listing', after which install the add-on on Jira cloud and run successfully.

Also we have investigated Jira cloud module types for Connect add-on creation in Java.  There is a limited list of Jira cloud module types, and no relevant one for integrating our Java plugin functionality.

So we would like to know how Java plugin can be converted to Connect add-on, so to define Jira custom field type.

Also, we were not able to successfully run the samples provided in the documentation.

Thanks for any help you can offer (or links to already answered questions)!

2 answers

0 votes
Steven Behnke Community Champion Aug 22, 2017

You need to provide your add-on as a service. That's how Connect add-ons work. Instead of working with your JAR installed locally they need to remotely request resources from your add-on server.

Typically this is accomplished by designing an add-on that fully uses a remote API specification like REST and client-side rendered resources.

You would convert all JAVA access in Velocity Templates to appropriate REST method calls. You replace Velocity Tempaltes and would serve content in an IFRAME rendered by the add-on or via client-rendered javascript (such as React).

There is no Custom Field Type to extend anymore, only IssueField: 

0 votes

No, you can't convert one type to the other.

The closest you can get is re-using the logic, but the two add-on types are totally different beasts.  Cloud does not (as far as I can tell) support custom fields in Connect add-ons.   I suspect the best you can do is to host the custom field on your own servers, and write a connect add-on to expose it on the JIRA Cloud system.

Suggest an answer

Log in or Sign up to answer
Community showcase
Posted Sep 18, 2018 in Jira

What modern development practices are at the heart of how your team delivers software?

Hey Community mates! Claire here from the Software Product Marketing team. We all know software development changes rapidly, and it's often tough to keep up. But from our research, we've found the h...

25,697 views 2 7
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