Return Java exception for Ajax

1

Alright?

I'm working on a project, and the backend (java) , is completely separate from the front-end , and they communicate by REST .

I have a big question on the issue of exceptions. For example, an error occurred in java, SQLException, and I wanted to post the return of it in ajax. To display it in an alert or modal for the user.

I have the following codes:

Java:  

@POST
@Consumes({MediaType.APPLICATION_JSON, MediaType.APPLICATION_XML })
@Produces({MediaType.APPLICATION_JSON, MediaType.APPLICATION_XML })
public Response adicionar(Produto produto) throws SQLException
{
    return Response.ok().entity(ProdutoService.insert(produto)).build();
}


Public Produto insert(produto){
    try{
        //tenta inserir dados no banco e retorna produto inserido
    }catch(SQLException e){
        // aqui está o meu 'problema'. Como lançar a exception para o ajax?
    }
}

Ajax:

$.ajax({
    type: 'POST',
    url: urlProduto,
    data: dataJson,
    dataType: "json",
    success: function (response) {
         //seu produto foi inserido com sucesso 
    }, 
    complete: function(){
         //atualiza a grid com os dados do produto
    },
    error: function (jqXHR, textStatus, errorThrown) {
         //o que devo fazer aqui???
         //como posso exibir para o usuário 
         //um alert ou mensagem conforme o erro ocorrido 
         //na SQLException do java?
    }
});

    
asked by anonymous 03.07.2014 / 21:30

1 answer

1

Erico,

Normally cast to SQLException and error: put the following:

error: function(jqXHR, status, error) {
  var err = eval("(" + jqXHR.responseText + ")");
  alert(err.Message);
}

This should display the detailed error sent by the server.

Despite being in .Net, you can check this link for more information:

link

    
03.07.2014 / 21:51