Populate custom field from external url connection

Nikhil January 29, 2013

I have a requirement that i should show a drop down field which will have the values coming from an xml which is not on jira server ie I have to make a cross domail call. I have made a jsp which is on jira server and it is reading that url but this jsp is having the jira defualt codes as will (in view source i can see all other jira tags along with my data). My data is coming under the tag <section> :
<section id="content" role="main">
<node1>somevalue</node> <node2>some value</node></section>

I have to show these values in a drop down.I am using the jira version 5.2.4 How to do this ?

-Thanks

1 answer

0 votes
Renjith Pillai
Rising Star
Rising Star
Rising Stars are recognized for providing high-quality answers to other users. Rising Stars receive a certificate of achievement and are on the path to becoming Community Leaders.
February 2, 2013

Make a new customfield type that reads the url and use it.

https://developer.atlassian.com/display/JIRADEV/How+to+create+a+new+Custom+Field+Type

Nikhil February 3, 2013

Yes , i have to create a new custom field but it would be of which category. I have once used the CSV upload for making a drop down field but the problem with there is a problem with CSV that we have to update it on a monthly/weekly basis. So which custom field type can we use ?

Nikhil February 3, 2013

I am also trying the below code for making a extenal url connection (have jira setup on my local machine ) but that is also not working.

<script type="text/javascript">
var fieldId = "customfield_10202";
function fieldOptions(data) {
console.log (data);
var currentValue = AJS.$("#" + fieldId).val();
var select = AJS.$("select#" + fieldId);
var foundIt = false;
select.append("<option></option>");
AJS.$.each(data, function(index, option) {
console.log(option);
if (option == currentValue) {
select.append("<option selected>" + option + "</option>");
foundIt = true;
}
else {
select.append("<option>" + option + "</option>");
}
});

if (!foundIt) {
select.append("<option>" + currentValue + "</option>");
}

AJS.$("input#" + fieldId).remove();
}

AJS.$(document).ready(function() {
alert("test1111");
AJS.$("#" + fieldId).parent().append("<select class='select' id='" + fieldId + "' name='" + fieldId + "'></select>");
AJS.$("input#" + fieldId).hide();
alert("test1");
AJS.$.ajax({
alert("test2");
url: "http://server.mysamplejsp.jsp",
success : function(Respxml){
alert("test4");
alert("data success"+Respxml);

}
alert("test2");
});
});

</script>

Not calling the fucntion but the alert itself are not coming.Please suggest.

Suggest an answer

Log in or Sign up to answer