Empresas
Empregos
  • Sobre nós
  • Soluções
    • Publicação de vagas
      Publique sua vaga e receba candidatos qualificados em 48h.
    • Avaliações de candidatos
      Mais de 500 testes técnicos e psicológicos, mais anti-fraude.
    • Headhunting
      Busca executiva personalizada do início ao fim.
    • Folha de Pagamento + EOR
      Dispersão de folha e EOR em mais de 15 países da LATAM.
  • Preços
  • Empregos

0

318
Visualizações
El uso de la anotación @Consumes en la llamada a la API Rest genera un error interno del servidor 500

Estoy tratando de crear un complemento de compilación personalizado utilizando el marco SDK de Atlassian y he desarrollado una API Rest de compilación personalizada para actualizar los datos almacenados en la base de datos.

Estoy invocando el resto de la API usando una llamada AJAX desde un archivo JavaScript como se indica a continuación:

 $.ajax({ headers:{ 'Content-Type':'application/json', 'Accept': 'application/json' }, url : serviceUrl + "rules/update", type: "POST", data : ruleObj })

Esta llamada API invocará la siguiente API REST:

 @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("Update API is invoked for rule " + ruleId + " to update Action triggered by : " + appuser); return Response.noContent().build(); } return Response.status(401).build(); } }

Inicialmente, sin agregar Content-Type, Aceptar en el archivo JS y sin agregar @Consumes ({ MediaType.APPLICATION_JSON }) La llamada a la API fue exitosa, pero después de agregar @Consumes ({ MediaType.APPLICATION_JSON }), obtengo 500 Error interno del servidor.

Intenté agregar 'text/plain' también, luego también arroja 500 Internal Server Error.

Necesito agregar @Consumes({ MediaType.APPLICATION_JSON }) para esta llamada a la API. ¿Alguien puede guiarme para resolver este problema?

over 4 years ago · Santiago Trujillo
1 Respostas
Responde à pergunta

0

Según su fragmento de código, no está devolviendo ningún objeto en el cuerpo de la respuesta.

 return Response.noContent().build(); or return Response.status(401).build();

@Consumes espera que su API devuelva una respuesta json.

¿Quieres que la API devuelva alguna respuesta?

over 4 years ago · Santiago Trujillo Relatório
Responde à pergunta
Encontrar trabalhos remotos

Descubra a nova forma de encontrar um emprego!

melhores empregos
Principais categorias de trabalho
Empresas
Postar vaga Preços Comercial
Jurídico
Termos e Condições Política de privacidade
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Recomende algumas ofertas para mim
Preciso de ajuda