Hi Team,
I am trying to build a custom build plugin using Atlassian sdk framework and in that I have developed a custom build Rest API to update data stored in database.
I am invoking the rest API using AJAX call from JavaScript file as given below:
$.ajax({
headers:{
'Content-Type':'application/json',
'Accept': 'application/json'
},
url : serviceUrl + "rules/update",
type: "POST",
data : ruleObj
})
This API call will invoke the following REST API:
@Path("/rules")
public class fieldsResource {
@POST
@Path("/update")
@Produces({ MediaType.APPLICATION_JSON })
@Consumes({ MediaType.APPLICATION_JSON })
public Response update(@Context
HttpServletRequest req, @Context
HttpServletResponse res) {
jiraAuthenticationContext = ComponentAccessor.getJiraAuthenticationContext();
appuser = jiraAuthenticationContext.getLoggedInUser();
// Fetch rule id of rule which need to be updated
final int ruleId = Integer.parseInt(req.getParameter("id"));
Rules rule = rule.findRuleById(ruleId);
boolean ifUserHasRequiredAccess = ifUserHasRequiredAccess(req, res, projectKey, appuser,
userManager, jiraAuthenticationContext, loginUriProvider);
if (ifUserHasRequiredAccess) {
log.warn("AIDT Plugin: Update API is invoked for rule " + ruleId + " to update Action triggered by : " + appuser);
return Response.noContent().build();
}
return Response.status(401).build();
}
}
Initially without adding Content-Type, Accept in JS file and without adding @Consumes({ MediaType.APPLICATION_JSON }) The API call was successful, but After adding @Consumes({ MediaType.APPLICATION_JSON }), I am getting 500 Internal Server Error.
I tried adding 'text/plain' also, then also it is throwing 500 Internal Server Error.
I need to add @Consumes({ MediaType.APPLICATION_JSON }) for this API call. Can anyone please guide me on resolving this issue?
Thanks & Regards,
Preethi H R
Online forums and learning are now in one easy-to-use experience.
By continuing, you accept the updated Community Terms of Use and acknowledge the Privacy Policy. Your public name, photo, and achievements may be publicly visible and available in search engines.